Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ---- PACKAGE: pvpgames
- -------------------------
- ---- txtcmd/gm/pvpgames.src
- ------------------------------------------------
- include ":pvpgames:main";
- program textcmd_pvpgames( who )
- ShowSetupGump(who);
- endprogram
- ------------------------------------------------
- ---- main.inc
- ------------------------------------------------
- include ":ngumps:gumps";
- include ":pvpgames:dominion";
- const PVPGAMES_NAME_DOMI := "Domination";
- const PVPGAMES_NAME_BARO := "Battle Royale";
- const PVPGAMES_NAME_GARI := "Garrison Taking";
- const PVPGAMES_BTN_SETGROUP_DOMI := 1337001;
- const PVPGAMES_BTN_SETGROUP_BARO := 1337002;
- const PVPGAMES_BTN_SETGROUP_GARI := 1337003;
- //Menu Item
- var PVPGAMES_DEFAULT_MENUITEM := PVPGAMES_NAME_DOMI;
- var PVPGAMES_MENUITEMS := array{PVPGAMES_NAME_DOMI,PVPGAMES_NAME_BARO};
- //Todo jen pro info...
- var PVPGAMES_TODOS := array{PVPGAMES_NAME_GARI};
- //Used Props:
- const PROPNAME_USER_SELECTED_CATEGORY = "#PvPGamesSelectedCategory";
- const PROPNAME_USER_GUMP_OPENED = "#PvPGamesHasGumpOpen";
- //X a Y pozice druhe casti (contentu) oproti menu...
- var PVPGAMES_SUB_OFF_X := 201;
- var PVPGAMES_SUB_OFF_Y := 3;
- //proc jsem udelal tuhle funkci!?
- function ShowSetupGump(who)
- DoShowGump(who);
- endfunction
- /*GUMP!*/
- function DoShowGump(who)
- /*Checknout jestli uz neni otevrenej!*/
- var PropResult := GetObjProperty(who, PROPNAME_USER_GUMP_OPENED);
- /*Nastavit defaultni hru pokud neni nastavena*/
- if(GetObjProperty(who, PROPNAME_USER_SELECTED_CATEGORY) == error)
- SetObjProperty(who, PROPNAME_USER_SELECTED_CATEGORY, PVPGAMES_DEFAULT_MENUITEM);
- endif
- if(PropResult == error)
- //nema nastavenej prop..
- else
- if(PropResult == 1)
- //ma prop a ma asi gump, neotvirat
- SendSysMessage(who,"You already have one pvpgames gump.");
- return;
- else
- //ma prop ale gump nema, otviram--
- endif
- endif
- SetObjProperty(who, PROPNAME_USER_GUMP_OPENED, 1);
- /*Základní část menu.. Pozadi a menu.*/
- var gump := GCreateGump(60,60,800,600);
- //Menu Background
- GResizePic(gump, 10, 10, 3600, 222, 400);
- //Section Background
- GResizePic(gump, PVPGAMES_SUB_OFF_X, PVPGAMES_SUB_OFF_Y, 9380, 308, 417);
- //Nadpis a Podčára.
- GTextLine(gump, 230, 31, 0, "Settings of:");
- GTextLine(gump, 320, 31, 61, GetObjProperty(who, PROPNAME_USER_SELECTED_CATEGORY));
- GGumpPic(gump,228, 25,93);
- GGumpPic(gump,344, 25,93);
- //Drak ;)
- GGumpPic(gump,463, 20,10410);
- //Vygenerovat Menu:
- var SelectedItem := GetObjProperty(who, PROPNAME_USER_SELECTED_CATEGORY);
- var iter := 0;
- for(iter:=1; iter<=PVPGAMES_MENUITEMS.Size(); iter:=iter+1)
- var PosX := 35;
- var PosY := 12 + (25*iter);
- var GumpID := 9350; //šedá
- var LabelHue := 43; //Oranživá
- if(SelectedItem == PVPGAMES_MENUITEMS[iter])
- GumpID := 9300; //žlutá
- LabelHue := 61; //zelená
- endif
- GResizePic(gump, PosX, PosY, GumpID, 175, 25);
- if(SelectedItem != PVPGAMES_MENUITEMS[iter])
- GAddButton(gump, PosX+7, PosY+4, 5601, 5601, 1, 1337000+iter);
- endif
- GTextLine(gump, PosX+30, PosY+3, LabelHue, PVPGAMES_MENUITEMS[iter]);
- endfor
- case ( SelectedItem )
- // Draw Section
- PVPGAMES_NAME_DOMI:
- DominionMain(who,gump);
- break;
- PVPGAMES_NAME_BARO:
- break;
- PVPGAMES_NAME_GARI:
- break;
- //Error:
- default:
- SendSysMessage(who,"INVALID ITEM: " + SelectedItem);
- break;
- endcase
- var GumpResult := GSendGump(who,gump);
- SetObjProperty(who, PROPNAME_USER_GUMP_OPENED, 0);
- if (GumpResult == 0)
- return;
- endif
- var Result := GumpResult[0];
- case ( Result )
- // Změny v selectionu
- PVPGAMES_BTN_SETGROUP_DOMI:
- SetObjProperty(who, PROPNAME_USER_SELECTED_CATEGORY, PVPGAMES_NAME_DOMI);
- DoShowGump(who);
- break;
- PVPGAMES_BTN_SETGROUP_BARO:
- SetObjProperty(who, PROPNAME_USER_SELECTED_CATEGORY, PVPGAMES_NAME_BARO);
- DoShowGump(who);
- break;
- PVPGAMES_BTN_SETGROUP_GARI:
- SetObjProperty(who, PROPNAME_USER_SELECTED_CATEGORY, PVPGAMES_NAME_GARI);
- DoShowGump(who);
- break;
- //custom buttony sekce
- default:
- //Eval vsech gamemodu:
- DominionEval(who,GumpResult);
- break;
- endcase
- endfunction
- function SubX(val)
- return val + PVPGAMES_SUB_OFF_X;
- endfunction
- function SubY(val)
- return val + PVPGAMES_SUB_OFF_Y;
- endfunction
- ------------------------------------------------
- ---- dominion.inc
- ------------------------------------------------
- use uo;
- include ":ngumps:gumps";
- include ":pvpgames:main";
- //Dokreslit hovna
- function DominionMain(who,gump)
- //GTextLine(gump, SubX(31), SubY(66), 0 ,"Selected Arena:");
- //GResizePic(gump, SubX(30), SubY(90), 9200, 250, 60);
- GResizePic(gump, 0,0, 9200,800,600); //nefunguje
- //ngumps:GResizePic(byref gump, x, y, gump_id, width, height)
- SendSysMessage(who,"Showing Dominion... (At: "+SubX(30)+"/"+SubY(30)+")"); //funguje
- endfunction
- function DominionEval(who,GumpResult)
- endfunction
- ------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement