Since custom dialogs are lik the new thing now and everyone is getting a boner over them.
stra_gui google that should pop up download it and look at controls
put pbo in C:\Program Files (x86)\Steam\steamapps\common\Arma 2 Operation Arrowhead\Expansion\Addons or w.e u installed arma 2 oa
then go to mulitplayer setup menu and press lan.
then double click or there should be a button to crate a game.
Then set up a new game .
That will show u how to setup a lan game.
instead tho make a functions module then during game execute [] call BIS_fnc_GUIeditor;
then u a box can pop up on that page it will tell u controls make the pretty dialog you want then hit * Shift + Ctrl + S I think.
paste that in a notepad file
rename all the buttons numbers
then look at a normal rsc dialog
Code:
class RscFunctionsViewer {
idd = 2929;
movingEnable = 0;
onload = "BIS_functions_mainscope setvariable ['help',true];";
onunload = "BIS_functions_mainscope setvariable ['help',nil];";
class controls {
class Background {
x = 0;
y = 0;
w = 1;
h = 1;
style = 0;
type = VSoft;
idc = -1;
font = "Zeppelin32";
sizeEx = 0.023;
text = "";
colorBackground[] = {0, 0, 0, 0.75};
colorText[] = {0, 0, 0, 1};
shadow = false;
};
class Caption {
x = 0;
y = 0.01;
w = 1;
h = 0.03;
style = 2;
type = VSoft;
idc = -1;
font = "Zeppelin32";
sizeEx = 0.023;
text = "Functions viewer";
colorBackground[] = {0.3, 0, 0, 1};
colorText[] = {1, 1, 1, 1};
shadow = false;
};
class TreeFunctions {
style = 0;
maxHistoryDelay = 0;
idc = 292901;
type = 5;
x = 0.01;
y = 0.144+0.094*4;
w = 0.4;
h = 0.851-0.094*4;
font = "Zeppelin32";
sizeEx = 0.028;
text = "";
rowHeight = 0;
color[] = {1, 1, 1, 1};
colorText[] = {1, 1, 1, 1};
colorScrollbar[] = {1, 1, 1, 1};
colorSelect[] = {0, 0, 0, 1};
colorSelect2[] = {0, 0, 0, 1};
colorSelectBackground[] = {0.4, 0.4, 0.4, 1};
colorSelectBackground2[] = {0.4, 0.4, 0.4, 1};
period = 0;
colorBackground[] = {0, 0, 0, 1};
soundSelect[] = {"", 0.1, 1};
class ScrollBar {
color[] = {1, 1, 1, 0.6};
colorActive[] = {1, 1, 1, 1};
colorDisabled[] = {1, 1, 1, 0.3};
thumb = "\ca\ui\data\ui_scrollbar_thumb_ca.paa";
arrowFull = "\ca\ui\data\ui_arrow_top_active_ca.paa";
arrowEmpty = "\ca\ui\data\ui_arrow_top_ca.paa";
border = "\ca\ui\data\ui_border_scroll_ca.paa";
};
autoScrollRewind = 0;
autoScrollDelay = 0;
autoScrollSpeed = 0;
shadow = false;
};
class TreeSources : TreeFunctions {
idc = 292902;
x = 0.01;
y = 0.05;
w = 0.4;
h = 0.084;
wholeHeight = 0.21;
};
class TreeTags : TreeFunctions {
idc = 292903;
x = 0.01;
y = 0.144;
w = 0.4;
h = 0.084;
wholeHeight = 0.21;
};
class TreeCats : TreeFunctions {
idc = 292904;
x = 0.01;
y = 0.144+0.094;
w = 0.4;
h = 0.084+0.094*2;
wholeHeight = 0.21;
};
class fncTitle : RscText {
idc = 292905;
style = 0x00 + 16;
linespacing = 1;
type = VSoft;
x = 0.42;
y = 0.05;
w = 0.57;
h = 0.07;
text = "";
font = "Zeppelin32";
sizeEx = 0.05;
colorBackground[] = {0, 0, 0, 0};
colorText[] = {1, 1, 1, 1};
shadow = false;
};
class fncPath : RscText {
idc = 292906;
y = 0.11;
h = 0.014;
sizeEx = 0.024;
colorText[] = {1, 1, 1, 0.7};
x = 0.42;
w = 0.57;
type = VSoft;
style = 0;
};
class fncDescription : fncTitle {
idc = 292907;
type = VSoft;
x = 0.42;
y = 0.144;
w = 0.57;
h = 0.3;
text = "";
sizeEx = 0.028;
};
class fncCode : RscEdit {
idc = 292908;
x = 0.42;
y = 0.454;
w = 0.57;
h = 0.5;
font = "EtelkaMonospaceProBold";
style = 0x00 + 16;
linespacing = 1;
text = "";
sizeEx = 0.02;
colorBackground[] = {0, 0, 0, 0};
colorText[] = {1, 1, 1, 1};
};
class btnCopy : RscButton {
type = VArmor;
idc = 292909;
y = 0.96;
x = 0.43+0.19;
w = 0.18;
h = 0.035;
style = 0;
text = "Copy to Clipboard";
colorBackground[] = {0.6, 0.3, 0, 1};
action = "copytoclipboard ctrltext ((findDisplay 2929) displayctrl 292908); (bis_functions_mainscope getvariable 'help_code');";
sizeEx = 0.028;
colortext[] = {1, 1, 1, 1};
};
class btnRefresh : btnCopy {
idc = 292910;
x = 0.43;
text = "Refresh";
action = "BIS_functions_mainscope setvariable ['help_refresh',true];";
};
class btnRecompileFile : btnCopy {
idc = 292911;
x = 0.43+2*0.19;
text = "Recompile File";
action = "_list = (findDisplay 2929) displayctrl 292901; _fncname = _list lbtext (lbcursel _list); call compile format ['%1 = compile preprocessfilelinenumbers ''%2''',_fncname,call compile format ['%1_path',_fncname]]";
};
};
};
class RscFunctionsViewer {
idd = 2929;
movingEnable = 0;
onload = "BIS_functions_mainscope setvariable ['help',true];";
onunload = "BIS_functions_mainscope setvariable ['help',nil];";
paste that at top rename the class name and give it random idd
your code should be below that. make sure u have };}; at end
save it has a .hpp
download a arma pbo compiler/decompiler
google it
decompile ui.pbo
download arma 2 unrap google it
decompile config.bin\
place your Rscfap.hpp in there
look up config.cpp
at the end do
#include "Rscfap.hpp"
done
u can recompile config.bin cpa to explain.
there u go now u have a custom pbo.
Now you just need a pbo hider and infistar bypass (since infistar checks if a custom dialog is open now)
Hope you can understand. I kind of got confused myself half way in,
You will figure it out
