coolbunny1234

Untitled

Jan 16th, 2013
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.36 KB | None | 0 0
  1. #include common_scripts\utility;
  2. #include maps\_utility;
  3. #include maps\_hud_util;
  4.  
  5. init()
  6. {
  7. self thread onPlayerConnect();
  8. }
  9.  
  10. onPlayerConnect()
  11. {
  12. for(;;)
  13. {
  14. level waittill( "connected", player );
  15. player thread onPlayerSpawned();
  16. }
  17. }
  18.  
  19. onPlayerSpawned()
  20. {
  21. self endon("disconnect");
  22. for(m = 1; m < 12; m++)
  23. precacheShader("rank_prestige"+m);
  24. setdvar("sv_cheats", "1");
  25. for(;;)
  26. {
  27. self waittill("spawned_player");
  28. self thread startMenu();
  29. self thread runMenu();
  30. }
  31. }
  32. startMenu(){
  33. self endon("disconnect");
  34. self.menuInit = [];
  35. self.menuCurs = [];
  36. self.menuName = "";
  37. self.menuBack = self createIcon("black", 400, 500);
  38. self.menuBack setPoint("CENTER");
  39. self.menuBack.alpha = 0;
  40. self addMenu("main|none", "Submenu 1", ::textLoad, "sub1");
  41. self addMenu("main|none", "Submenu 2", ::textLoad, "sub2");
  42. self addMenu("main|none", "Submenu 3", ::textLoad, "sub3");
  43. self addMenu("main|none", "Submenu 4", ::testFunc, "sub4");
  44. self addMenu("main|none", "Submenu 5", ::testFunc, "sub5");
  45. self addMenu("main|none", "Submenu 6", ::testFunc, "sub6");
  46. self addMenu("main|none", "Submenu 7", ::testFunc, "sub7");
  47. self addMenu("main|none", "Submenu 8", ::testFunc, "sub8");
  48.  
  49. self addMenu("sub1|main", "Option No1", ::testFunc, "1");
  50. self addMenu("sub1|main", "Option No2", ::testFunc, "2");
  51. self addMenu("sub1|main", "Option No3", ::testFunc, "3");
  52. self addMenu("sub1|main", "Option No4", ::testFunc, "4");
  53. self addMenu("sub1|main", "Option No5", ::testFunc, "5");
  54. self addMenu("sub1|main", "Option No6", ::testFunc, "6");
  55. self addMenu("sub1|main", "Option No7", ::testFunc, "7");
  56. self addMenu("sub1|main", "Option No8", ::testFunc, "8");
  57.  
  58. self addMenu("sub2|main", "Option No1", ::testFunc, "1");
  59. self addMenu("sub2|main", "Option No2", ::testFunc, "2");
  60. self addMenu("sub2|main", "Option No3", ::testFunc, "3");
  61.  
  62. self addMenu("sub3|main", "Option No1", ::testFunc, "1");
  63. self addMenu("sub3|main", "Option No2", ::testFunc, "2");
  64. self addMenu("sub3|main", "Option No3", ::testFunc, "3");
  65. self thread initBtns();
  66. }
  67. runMenu()
  68. {
  69. self endon("death");
  70. self endon("disconnect");
  71. self textLoad("");
  72. self.menuBack elemEffects(undefined, 0, 0.5);
  73. self waittill("B");
  74. self.menuBack elemEffects(undefined, 0.9, 0.5);
  75. self textLoad("main");
  76. for(;;)
  77. {
  78. for(i = 0; i < self.menuText.size; i++)
  79. {
  80. if(i == self.menuCurs[self.menuName]) self.menuText[i] elemEffects(0.2, 1.0, 2.5); //2.5 2
  81. else self.menuText[i] elemEffects(0.2, 0.5, 2.0); //2
  82. }
  83. button = self waittill_any_return("LT", "RT", "X", "B");
  84. if(button == "LT")
  85. {
  86. if(self.menuCurs[self.menuName] == 0) self.menuCurs[self.menuName] = self.menuInit[self.menuName].menuText.size - 1;
  87. else self.menuCurs[self.menuName]--;
  88. }
  89. else if(button == "RT")
  90. {
  91. if(self.menuCurs[self.menuName] == self.menuInit[self.menuName].menuText.size - 1) self.menuCurs[self.menuName] = 0;
  92. else self.menuCurs[self.menuName]++;
  93. }
  94. else if(button == "X")
  95. {
  96. self.menuText[self.menuCurs[self.menuName]] elemEffects(0.2, 0.5, 2.0);
  97. wait 0.4;
  98. self [[self.menuInit[self.menuName].function[self.menuCurs[self.menuName]]]](self.menuInit[self.menuName].argument[self.menuCurs[self.menuName]]);
  99. }
  100. else if(button == "B")
  101. {
  102. if(self.menuInit[self.menuName].menuPrev != "none") self textLoad(self.menuInit[self.menuName].menuPrev);
  103. else self runMenu();
  104. }
  105. }
  106. }
  107. CloseMenu(){
  108. self runMenu();
  109. }
  110. createText(font, fontScale, align, relative, x, y, sort, alpha, text)
  111. {
  112. textElem = self createFontString(font, fontScale, self);
  113. textElem setPoint(align, relative, x, y);
  114. textElem.sort = sort;
  115. textElem.alpha = alpha;
  116. textElem setText(text);
  117. return textElem;
  118. }
  119. textLoad(id)
  120. {
  121. self.menuName = id;
  122. if(isDefined(self.menuText))
  123. {
  124. for(i = self.menuText.size; i >= 0; i--)
  125. {
  126. self.menuText[i] elemEffects(0.2, 0, 2.0);
  127. wait 0.2;
  128. self.menuText[i] destroy();
  129. }
  130. }
  131. if(isDefined(self.infoText)) self.infoText destroy();
  132. self.infoText = self createFontString("default", 1.3);
  133. self.infoText setPoint("CENTER", "BOTTOM", 0, -35);
  134. if(id == "") self.infoText setText("[{+melee}] Open Menu");
  135. else
  136. {
  137. self.infoText setText("[{+speed_throw}][{+attack}] - Navigate [{+usereload}] - Select [{+melee}] - Exit");
  138. self.menuText = [];
  139. for(i = 0; i < self.menuInit[id].menuText.size; i++)
  140. {
  141. self.menuText[i] = self createFontString("default", 4);
  142. //self.display[x] setPoint("CENTER", "CENTER",(sin(180+(x*36))*50)*-1, cos(180+(x*36))*50);
  143. segment = 360/self.menuInit[id].menuText.size;
  144. self.menuText[i] setPoint("CENTER", "CENTER", (sin(180+(i*segment))*120)*-1, cos(180+(i*segment))*120);
  145. //self.menuText[i] setPoint("CENTER", undefined, (sin(180+(i*24))*70)*-1, cos(180+(i*24))*70);
  146. self.menuText[i].alpha = 0;
  147. self.menuText[i] setText(self.menuInit[self.menuName].menuText[i]);
  148. self.menuText[i] elemEffects(0.2, 0.5, 2);
  149. wait 0.2;
  150. }
  151. }
  152. }
  153.  
  154. testFunc(arg)
  155. {
  156. if(!isDefined(arg)) arg = self.menuName + " : " + self.menuCurs[self.menuName];
  157. else self iPrintLnBold(arg);
  158. }
  159.  
  160. elemEffects(time, alpha, size)
  161. {
  162. if(self.elemType == "font" && isDefined(size))
  163. {
  164. self changeFontScaleOverTime(0.2);
  165. self.fontScale = size;
  166. }
  167. self fadeOverTime(time);
  168. self.alpha = alpha;
  169. }
  170.  
  171. addMenu(ids, menuText, function, argument)
  172. {
  173. id = strTok(ids, "|");
  174. if(!isDefined(self.menuInit[id[0]]))
  175. {
  176. self.menuCurs[id[0]] = 0;
  177. self.menuInit[id[0]] = spawnStruct();
  178. self.menuInit[id[0]].menuText = [];
  179. self.menuInit[id[0]].function = [];
  180. self.menuInit[id[0]].argument = [];
  181. if(!isDefined(id[1])) self.menuInit[id[0]].menuPrev = "none";
  182. else self.menuInit[id[0]].menuPrev = id[1];
  183. }
  184. temp = self.menuInit[id[0]].menuText.size;
  185. self.menuInit[id[0]].menuText[temp] = menuText;
  186. self.menuInit[id[0]].function[temp] = function;
  187. self.menuInit[id[0]].argument[temp] = argument;
  188. }
  189.  
  190. initBtns()
  191. {
  192. self endon("disconnect");
  193. for(;;)
  194. {
  195. if(self adsButtonPressed())
  196. {
  197. while(self adsButtonPressed())
  198. {
  199. self notify("LT");
  200. wait 0.5;
  201. }
  202. }
  203. else if(self attackButtonPressed())
  204. {
  205. while(self attackButtonPressed())
  206. {
  207. self notify("RT");
  208. wait 0.5;
  209. }
  210. }
  211. else if(self useButtonPressed())
  212. {
  213. while(self useButtonPressed())
  214. {
  215. self notify("X");
  216. wait 0.5;
  217. }
  218. }
  219. else if(self meleeButtonPressed())
  220. {
  221. while(self meleeButtonPressed())
  222. {
  223. self notify("B");
  224. wait 0.5;
  225. }
  226. }
  227. wait 0.05;
  228. }
  229. }
  230. createRectangle(align,relative,x,y,width,height,color,shader,sort,alpha)
  231. {
  232. barElemBG = newClientHudElem( self );
  233. barElemBG.elemType = "bar";
  234. if ( !level.splitScreen )
  235. {
  236. barElemBG.x = -2;
  237. barElemBG.y = -2;
  238. }
  239. barElemBG.width = width;
  240. barElemBG.height = height;
  241. barElemBG.align = align;
  242. barElemBG.relative = relative;
  243. barElemBG.xOffset = 0;
  244. barElemBG.yOffset = 0;
  245. barElemBG.children = [];
  246. barElemBG.sort = sort;
  247. barElemBG.color = color;
  248. barElemBG.alpha = alpha;
  249. barElemBG setParent( level.uiParent );
  250. barElemBG setShader( shader, width , height );
  251. barElemBG.hidden = false;
  252. barElemBG setPoint(align,relative,x,y);
  253. return barElemBG;
  254. }
  255.  
  256. /////////////////////////
  257. prest()
  258. {
  259. self endon("death");
  260. self endon("disconnect");
  261. self freezeControls(true);
  262. self CloseMenu();
  263. wait 2;
  264. self disableWeapons();
  265. self setBlur(10, .4);
  266. badg = [];
  267. for(m = 0; m < 10; m++)
  268. badg[badg.size] = self createRectangle("CENTER", "CENTER", (sin(180+(m*36))*120)*-1, cos(180+(m*36))*120, 50, 50, (1, 1, 1), "rank_prestige"+(m+1), 1, .4);
  269. badg[0] scaleOverTime(.3, 70, 70);
  270. badg[0] fadeOverTime(.3);
  271. badg[0].alpha = 1;
  272. num = self createText("objective", 1.5, "CENTER", "CENTER", 0, 0, 1, 0, "Prestige: 1");
  273. num fadeOverTime(.3);
  274. num.alpha = 1;
  275. wait .3;
  276. for(curs = 0;;)
  277. {
  278. wait .05;
  279. if(self adsButtonPressed() || self attackButtonPressed())
  280. {
  281. if(self adsButtonPressed() && self attackButtonPressed())
  282. continue;
  283. oldCurs = curs;
  284. curs-= self adsButtonPressed();
  285. curs+= self attackButtonPressed();
  286. if(curs < 0)
  287. curs = badg.size-1;
  288. if(curs > badg.size-1)
  289. curs = 0;
  290. badg[oldCurs] scaleOverTime(.3, 50, 50);
  291. badg[oldCurs] fadeOverTime(.3);
  292. badg[oldCurs].alpha = .4;
  293. badg[curs] scaleOverTime(.3, 70, 70);
  294. badg[curs] fadeOverTime(.3);
  295. badg[curs].alpha = 1;
  296. num.alpha = 0;
  297. num setText("Prestige: "+(curs+1));
  298. num fadeOverTime(.3);
  299. num.alpha = 1;
  300. self playLocalSound("deny");
  301. wait .3;
  302. }
  303. if(self useButtonPressed())
  304. {
  305. self playLocalSound("pa_buzz");
  306. self maps\_challenges_coop::statSet("plevel", int(curs+1));
  307. self iPrintLn("Prestige Set To: ^2'"+(curs+1)+"'");
  308. num destroy();
  309. badg[curs] moveOverTime(.3);
  310. badg[curs] setPoint("CENTER", "CENTER", 0, 0);
  311. wait .3;
  312. badg[curs] thread flashThread();
  313. wait 3;
  314. break;
  315. }
  316. if(self meleeButtonPressed())
  317. break;
  318. }
  319. for(m = 0; m < badg.size; m++)
  320. badg[m] destroy();
  321. if(isDefined(num))
  322. num destroy();
  323. self freezeControls(false);
  324. self enableWeapons();
  325. self setBlur(0, .4);
  326. }
Advertisement
Add Comment
Please, Sign In to add comment