5 void (float, float) m_keydown;
46 float K_KP_RIGHTARROW;
122 float CS_DISCONNECTED;
124 float DRAWFLAG_NORMAL;
125 float DRAWFLAG_ADDITIVE;
126 float DRAWFLAG_MODULATE;
127 float DRAWFLAG_2XMODULATE;
131 float SLIST_HOSTCACHEVIEWCOUNT;
132 float SLIST_HOSTCACHETOTALCOUNT;
133 float SLIST_MASTERQUERYCOUNT;
134 float SLIST_MASTERREPLYCOUNT;
135 float SLIST_SERVERQUERYCOUNT;
136 float SLIST_SERVERREPLYCOUNT;
137 float SLIST_SORTFIELD;
138 float SLIST_SORTDESCENDING;
139 float SLIST_LEGACY_LINE1;
140 float SLIST_LEGACY_LINE2;
141 float SLIST_TEST_CONTAINS;
142 float SLIST_TEST_NOTCONTAIN;
143 float SLIST_TEST_LESSEQUAL;
144 float SLIST_TEST_LESS;
145 float SLIST_TEST_EQUAL;
146 float SLIST_TEST_GREATER;
147 float SLIST_TEST_GREATEREQUAL;
148 float SLIST_TEST_NOTEQUAL;
149 float SLIST_MASK_AND;
151 float NET_CURRENTPROTOCOL;
155 float CINE_FIRSTFRAME;
156 float CINE_RESETONWAKEUP;
158 float ERR_CANNOTOPEN;
159 float ERR_NOTENOUGHFILEHANDLES;
160 float ERR_INVALIDMODE;
161 float ERR_BADFILENAME;
162 float ERR_NULLSTRING;
163 float ERR_BADDRAWFLAG;
167 void (string) checkextension;
169 void (string) objerror;
171 void (string) bprint;
172 void (float, string) sprint;
173 void (string) centerprint;
174 vector (vector) normalize;
176 float (vector) vectoyaw;
177 vector (vector) vectoangles;
181 string (string) str_cvar;
182 void (string, string) cvar_set;
183 void (string) dprint;
186 string (vector) vtos;
187 string (entity) etos;
190 void (entity) remove;
191 entity (entity, FIELD TYPE, string) findstring;
192 entity (entity, FIELD TYPE, float) findfloat;
193 entity (entity, FIELD TYPE, entity) findentity;
194 entity (FIELD TYPE, string) findchainstring;
195 entity (FIELD TYPE, float) findchainfloat;
196 entity (FIELD TYPE, entity) findchainentity;
197 string (string) precache_file;
198 string (string) precache_sound;
204 void (entity) eprint;
208 entity (entity) nextent;
213 float (string, string, float) registercvar;
216 float (float, float, float) bound;
217 float (float, float) pow;
218 void (entity, entity) copyentity;
219 float (string, float) _fopen;
221 string (float) fgets;
222 void (float, string) fputs;
223 float (string) strlen;
224 string (string) strcat;
225 string (string, float, float) substring;
226 vector (string) stov;
227 string (string) strzone;
228 void (string) strunzone;
229 float (string) tokenize;
232 float () clientcount;
233 float () clientstate;
234 void (float, string) clientcommand;
235 void (string) changelevel;
236 void (string) localsound;
237 vector () getmousepos;
239 void (string) loadfromdata;
240 void (string) loadfromfile;
241 float (float, float) mod;
242 float (string, float, float) search_begin;
243 void (float) search_end;
244 float (float) search_getsize;
245 string (float, float) search_getfilename;
249 float (string) validstring;
250 float (string) altstr_count;
251 string (string) altstr_prepare;
252 string (string, float) altstr_get;
253 string (string, float, string) altstr_set;
254 string (string, float, string) altstr_ins;
255 void (float, float, float) WriteByte;
256 void (float, float, float) WriteChar;
257 void (float, float, float) WriteShort;
258 void (float, float, float) WriteLong;
259 void (float, float, float) WriteAngle;
260 void (float, float, float) WriteCoord;
261 void (string, float, float) WriteString;
262 void (entity, float, float) WriteEntity;
263 float (string) iscachedpic;
264 string (string) precache_pic;
265 void (string) freepic;
266 float (vector, float, vector, vector, float, float) drawcharacter;
267 float (vector, string, vector, vector, float, float) drawstring;
268 float (vector, string, vector, vector, float, float) drawpic;
269 float (vector, vector, vector, float, float) drawfill;
270 void (float, float, float, float) drawsetcliparea;
271 void () drawresetcliparea;
272 vector (string) drawgetimagesize;
273 float (string, string) cin_open;
274 void (string) cin_close;
275 void (string, float) cin_setstate;
276 float (string) cin_getstate;
277 void (float) setkeydest;
279 void (float) setmousetarget;
280 float () getmousetarget;
281 float (string) isfunction;
282 void () callfunction;
283 void (float, entity) writetofile;
284 vector (float) getresolution;
285 string (float) keynumtostring;
286 string (string) findkeysforcommand;
287 float (float) gethostcachevalue;
288 string (float, float) gethostcachestring;
289 void (entity, string) parseentitydata;
290 float (string) stringtokeynum;
291 void () resethostcachemasks;
292 void (float, float, string, float) sethostcachemaskstring;
293 void (float, float, float, float) sethostcachemasknumber;
294 void () resorthostcache;
295 void (float, float) sethostcachesort;
296 void () refreshhostcache;
297 float (float, float) gethostcachenumber;
298 float (string) gethostcacheindexforkey;
299 void (string) addwantedhostcachekey;
300 float (string, float) fopen;
301 float(string filename, float mode) fopen = asm
305 EQ_F mode, KEY_GAME, temp_0;
307 STORE_F filename, parm0_x;
308 STORE_F mode, parm1_x;
311 STORE_F filename, parm0_x;
313 STORE_S return_x, filename;
314 STORE_F filename, parm0_x;
315 STORE_F KEY_GAME, parm1_x;
316 STORE_F SLIST_SERVERREPLYCOUNT, parm2_x;
318 NE_S return_x, "data/", temp_0;
320 STORE_F "menu: fopen: all output must go into data/!
323 RETURN ERR_CANNOTOPEN;
324 STORE_F filename, parm0_x;
325 STORE_F SLIST_SERVERREPLYCOUNT, parm1_x;
326 STORE_F 10000.000000, parm2_x;
328 STORE_F return_x, parm0_x;
329 STORE_F mode, parm1_x;
331 STORE_F return_x, handle;
332 STORE_F filename, parm0_x;
339 float GAME_CONNECTED;
340 float GAME_DEVELOPER;
344 void () Util_NullFunction;
345 float () Util_TrueFunction;
346 float () Util_FalseFunction;
347 string () Util_StringFuntion;
348 vector () Util_VectorFunction;
349 entity () Util_EntityFunction;
350 float (string) Util_GetAltStringCount;
351 string (string, float) Util_GetAltStringItem;
352 string (string, float, string) Util_SetAltStringItem;
353 string (string, float) Util_DelAltStringItem;
354 string (string, float, string) Util_InsAltStringItem;
355 string (string) Util_AltStringPrepare;
356 string (string, string) Util_AltStringPush;
357 string (string, string) Util_AltStringPushBack;
358 string (string) Util_GetAltStringTop;
359 string (string) Util_AltStringPop;
360 bool (vector, vector, vector) Util_InRect;
361 vector (vector, vector, vector) Util_GetClipDelta;
362 vector (vector, vector, vector, vector) Util_ClipRect;
363 bool (vector, vector, vector, vector) Util_RectInRect;
364 string (string) Util_ClipStack_Reset;
365 string (string, vector, vector) Util_ClipStack_Push;
366 string (string) Util_ClipStack_Pop;
367 vector (string) Util_ClipStack_GetPosition;
368 vector (string) Util_ClipStack_GetSize;
369 string (string) Util_OriginStack_Reset;
370 string (string, vector) Util_OriginStack_Push;
371 string (string) Util_OriginStack_Pop;
372 vector (string) Util_OriginStack_Get;
373 string () String_Create;
374 string (string) String_Zone;
375 string (string) String_Normal;
376 string (string, string) String_Set;
377 string (string) String_Free;
378 string (string, string) String_Append;
379 string (string, float, float) String_Substring;
380 void (entity, FIELD TYPE) String_EntityCreate;
381 void (entity, FIELD TYPE) String_EntityZone;
382 void (entity, FIELD TYPE, string) String_EntitySet;
383 void (entity, FIELD TYPE) String_EntityFree;
384 vector (string, vector) Util_GetEndOfLine;
385 vector (string, vector, float) Util_GetEndOfWrappedLine;
386 string () Util_CreateUID;
387 string (float) Util_GetUIDName;
388 float (string) Util_GetUIDNum;
389 string () Property_Create;
390 string (string) Property_Zone;
391 string (string) Propery_Free;
392 float (string) Property_Validate;
393 float (string, string) Property_Exists;
394 string (string, string, string) Property_Register;
395 string (string, string, string) Property_Set;
396 string (string, string, string) Property_Rename;
397 string (string, string) Property_Delete;
398 string (string, string) Property_Get;
399 string (string, string) Property_GetString;
400 float (string, string) Property_GetFloat;
401 vector (string, string) Property_GetVector;
402 entity (string, string) Property_GetEntity;
406 void () Timer_Update;
408 float GFX_MENU_DEFAULT_WIDTH;
409 float GFX_MENU_DEFAULT_HEIGHT;
410 string CVAR_SCMENU_MENU_WIDTH;
411 string CVAR_SCMENU_MENU_HEIGHT;
412 float GFX_SHOWFPS_DURATION;
413 float GFX_SHOWFPS_DEFAULT;
414 string CVAR_SCMENU_SHOWFPS;
415 float Gfx_Menu_Width;
416 float Gfx_Menu_Height;
417 float Gfx_Real_Width;
418 float Gfx_Real_Height;
425 float (string) Gfx_IsCached;
426 float (string) Gfx_Precache;
427 void (string) Gfx_Free;
428 vector (string) Gfx_GetImageSize;
429 vector (vector) Gfx_ConToMen;
430 vector (vector) Gfx_MenToCon;
431 void () Gfx_ResetClipArea;
432 float (vector, float, vector, vector, float, float) Gfx_DrawCharacter;
433 float (vector, string, vector, vector, float, float) Gfx_DrawString;
434 float (vector, string, vector, vector, float, float) Gfx_DrawPic;
435 float (vector, vector, vector, float, float) Gfx_Fill;
436 void (float, float, float, float) Gfx_SetClipArea;
437 float (string) Sound_Precache;
438 void (string) Sound_Free;
439 void (string) Sound_Play;
441 string Cursor_Current;
442 void () Cursor_Animation;
443 float Cursor_Relative_x;
444 float Cursor_Relative_y;
445 float Cursor_Relative_z;
446 vector Cursor_Relative;
447 float Cursor_Position_x;
448 float Cursor_Position_y;
449 float Cursor_Position_z;
450 vector Cursor_Position;
451 float Cursor_Speed_x;
452 float Cursor_Speed_y;
453 float Cursor_Speed_z;
455 float Cursor_Transparency;
456 float Cursor_Color_x;
457 float Cursor_Color_y;
458 float Cursor_Color_z;
462 float Cursor_Offset_x;
463 float Cursor_Offset_y;
464 float Cursor_Offset_z;
465 vector Cursor_Offset;
468 void () Cursor_Display;
471 void () Cursor_Update;
472 void () Cursor_DefaultAnimation;
473 void (vector, string, vector, vector, float, float) Cursor_PrintInfo;
479 void (string) Key_Unbind;
480 string (float) Key_GetName;
481 float (string) Key_GetNum;
482 string (string) Key_GetBindList;
483 void (float, string) Key_LimitBinds;
484 void (string, string) Key_Bind;
485 float SLIST_FIELD_CNAME;
486 float SLIST_FIELD_PING;
487 float SLIST_FIELD_GAME;
488 float SLIST_FIELD_MOD;
489 float SLIST_FIELD_MAP;
490 float SLIST_FIELD_NAME;
491 float SLIST_FIELD_MAXPLAYERS;
492 float SLIST_FIELD_NUMPLAYERS;
493 float SLIST_FIELD_PROTOCOL;
494 float HostCache_ViewCount;
495 float HostCache_TotalCount;
496 float HostCache_MasterQueryCount;
497 float HostCache_MasterReplyCount;
498 float HostCache_ServerQueryCount;
499 float HostCache_ServerReplyCount;
500 float HostCache_SortField;
501 float HostCache_SortDescending;
502 void () HostCache_Init;
503 void () HostCache_Update;
504 void () HostCache_ResortViewSet;
505 void () HostCache_RefreshHostCache;
506 float PARSER_TT_ITEM;
507 float PARSER_TT_TEMPLATE;
508 float PARSER_TT_DERIVE;
509 float PARSER_TT_DERIVETEMPLATE;
510 float PARSER_TT_DEFINE;
511 float PARSER_TT_UNDEF;
512 float PARSER_TT_IGNORE;
513 float PARSER_TT_NAMESPACE;
514 float PARSER_TT_INCLUDE;
515 float PARSER_TT_BRACEOPEN;
516 float PARSER_TT_BRACECLOSE;
517 float PARSER_TT_BRACKETOPEN;
518 float PARSER_TT_BRACKETCLOSE;
519 float PARSER_TT_TOKEN;
520 float PARSER_TT_SIZE;
521 string PARSER_TT_TEXT;
526 float Parser_MaxIncludeDepth;
527 string Parser_FileList;
528 float Parser_IncludeDepth;
529 entity Parser_DefineChain;
530 string Parser_Filename;
531 float Parser_LineNumber;
534 float Parser_NumTokens;
535 float Parser_TokenNum;
537 float Parser_TokenType;
538 float () Parser_GetToken;
539 float () Parser_GetTokenType;
540 void () Parser_ParseDefine;
541 void () Parser_ProcessDefine;
542 void () Parser_ParseUndef;
543 void (float) Parser_Expect;
544 void (string) Parser_Error;
545 void (float, string) Parser_Print;
546 entity (string) Parser_ParseItem;
547 entity (string) Parser_DeriveItem;
548 string (string, string) Parser_ParseEntity;
549 void (string) Parser_ParseDefinition;
550 void (string) Parser_ParseNamespace;
551 void () Parser_ParseIgnore;
552 void (entity, entity) Parser_CloneChildren;
553 void (string) Parser_IncludeFile;
554 void (string, string) Parser_ParseFile;
555 void (string) Parser_ParseMenu;
558 string SYSTEM_CVAR_VERSION_BUILDDATE;
559 string SYSTEM_CVAR_VERSION_BUILDTIME;
560 string SYSTEM_CVAR_VERSION;
561 string SYSTEM_CVAR_VERSION_BUILDDATE_VALUE;
562 string SYSTEM_CVAR_VERSION_BUILDTIME_VALUE;
563 string SYSTEM_CVAR_VERSION_VALUE;
564 string SYSTEM_CVAR_DEBUG;
565 string SYSTEM_CVAR_DEBUG_REF;
566 string SYSTEM_CVAR_DEBUG_SOUND;
567 string SYSTEM_CVAR_DEBUG_AREA;
568 string SYSTEM_CVAR_DEBUG_STEP;
569 string SYSTEM_CVAR_DEBUG_MOUSE;
570 string SYSTEM_CVAR_DEBUG_STRUCTURE;
571 string SYSTEM_CVAR_DEBUG_RUNFLAG;
572 string SYSTEM_CVAR_DEBUG_PROCESS;
573 string SYSTEM_CVAR_DEBUG_MGFX;
574 string SYSTEM_CVAR_DEBUG_PARSER;
575 string SYSTEM_CVAR_DEBUG_PROCESS_FILTER;
576 string SYSTEM_CVAR_DEBUG_DUMP_NAMES;
577 float SYSTEM_CVAR_DEBUG_DEFAULT;
578 float SYSTEM_CVAR_DEBUG_REF_DEFAULT;
579 float SYSTEM_CVAR_DEBUG_RUNFLAG_DEFAULT;
580 float SYSTEM_CVAR_DEBUG_PROCESS_DEFAULT;
581 float SYSTEM_CVAR_DEBUG_MGFX_DEFAULT;
582 float SYSTEM_CVAR_DEBUG_STRUCTURE_DEFAULT;
583 string SYSTEM_CVAR_DEBUG_PARSER_DEFAULT;
584 string SYSTEM_CVAR_DEBUG_PROCESS_FILTER_DEFAULT;
585 float SYSTEM_CVAR_DEBUG_SOUND_DEFAULT;
586 float SYSTEM_CVAR_DEBUG_AREA_DEFAULT;
587 float SYSTEM_CVAR_DEBUG_STEP_DEFAULT;
588 float SYSTEM_CVAR_DEBUG_MOUSE_DEFAULT;
590 bool sys_debug_sound;
593 bool sys_debug_runflag;
594 bool sys_debug_process;
596 float sys_debug_mouse;
597 float sys_debug_structure;
598 float sys_debug_parser;
600 float sys_debug_process_filter;
601 float sys_debug_cursor_localpos_x;
602 float sys_debug_cursor_localpos_y;
603 float sys_debug_cursor_localpos_z;
604 vector sys_debug_cursor_localpos;
605 void () Sys_Debug_Init;
606 void () Sys_Debug_Frame;
607 void () Sys_Debug_Draw;
608 void () Sys_Debug_DumpNames;
609 string MENU_NORMAL_NAME;
610 string MENU_INGAME_NAME;
611 string MENU_NORMAL_DEFAULT;
612 string MENU_INGAME_DEFAULT;
613 string MENU_MAINFILE;
614 bool MENU_ALLOWINGAME;
617 void () Menu_PerformReinit;
619 void () Menu_Shutdown;
620 void (entity) Menu_LinkItem;
621 void (entity) Menu_LinkWindow;
622 entity (string, string, string) Menu_CreateItem;
623 entity (entity, string, string, bool) Menu_DeriveItem;
624 void (entity, string) Menu_AddEntityData;
625 void (entity) Menu_LinkChildren;
626 void () Menu_LinkWindows;
627 float Menu_Clip_Position_x;
628 float Menu_Clip_Position_y;
629 float Menu_Clip_Position_z;
630 vector Menu_Clip_Position;
631 float Menu_Clip_Size_x;
632 float Menu_Clip_Size_y;
633 float Menu_Clip_Size_z;
634 vector Menu_Clip_Size;
639 vector (vector) Menu_OrgToMen;
640 vector (vector) Menu_MenToOrg;
641 vector (vector) Menu_ConToOrg;
642 vector (vector) Menu_OrgToCon;
643 float (vector, float, vector, vector, float, float) Menu_DrawCharacter;
644 float (vector, string, vector, vector, float, float) Menu_DrawString;
645 float (vector, string, vector, vector, float, float) Menu_DrawPicture;
646 float (vector, vector, vector, float, float) Menu_Fill;
647 void (float, float, float, float) Menu_SetClipArea;
648 void () Menu_ResetClipArea;
649 bool _menu_process_filtered;
650 float RUNFLAG_TEMPLATE;
651 float RUNFLAG_HADMOUSE;
652 float RUNFLAG_MOUSEINAREA;
653 float RUNFLAG_CHILDDRAWONLY;
654 float RUNFLAG_CHILDDRAWUPDATEONLY;
655 float RUNFLAG_HIDDEN;
656 float RUNFLAG_CLIPPED;
657 float RUNFLAG_NOSELECT;
658 float RUNFLAG_USERSELECT;
659 float RUNFLAG_DELETEFRAME;
660 float RUNFLAG_DELETETOGGLE;
661 float RUNFLAG_SPAWNED;
685 .float _cache_origin_x;
686 .float _cache_origin_y;
687 .float _cache_origin_z;
688 .vector _cache_origin;
689 .float _cache_clip_pos_x;
690 .float _cache_clip_pos_y;
691 .float _cache_clip_pos_z;
692 .vector _cache_clip_pos;
693 .float _cache_clip_size_x;
694 .float _cache_clip_size_y;
695 .float _cache_clip_size_z;
696 .vector _cache_clip_size;
703 .void (bool, bool) select;
706 .bool (float, float) key;
709 .void () _mouseEnter;
710 .void () _mouseLeave;
712 .void (bool, bool) _select;
714 .bool (float, float) _key;
715 void () DefCt_Reinit;
716 void () DefCt_Destroy;
717 float (float, float) DefCt_Key;
719 void () DefCt_MouseEnter;
720 void () DefCt_MouseLeave;
721 void () DefCt_Update;
722 void (float, float) DefCt_Select;
723 void (entity) Raise_Reinit;
724 void (entity) Raise_Destroy;
725 bool (entity, float, float) Raise_Key;
726 void (entity) Raise_Draw;
727 void (entity) Raise_MouseEnter;
728 void (entity) Raise_MouseLeave;
729 void (entity) Raise_Update;
730 void (entity, float, float) Raise_Select;
732 void () CtCall_Reinit;
733 void () CtCall_Destroy;
734 float (float, float) CtCall_Key;
736 void () CtCall_MouseEnter;
737 void () CtCall_MouseLeave;
738 void () CtCall_Action;
739 void () CtCall_Update;
740 void (float, float) CtCall_Select;
741 entity Menu_ActiveWindow;
742 entity Menu_ActiveItem;
743 entity (entity) _Menu_GetParent;
744 entity (entity) _Menu_GetFirst;
745 entity (entity) _Menu_GetLast;
746 entity (entity) _Menu_GetNext;
747 entity (entity) _Menu_GetPrev;
748 bool (entity, entity) _Menu_IsEmbeddedParentOf;
749 void () _Menu_SelectNext;
750 void () _Menu_SelectPrev;
751 float () _Menu_SelectUp;
752 float () _Menu_SelectDown;
753 void () _Menu_Reselect;
754 void (float) Menu_SelectNext;
755 void (float) Menu_SelectPrev;
756 float (float) Menu_SelectUp;
757 float (float) Menu_SelectDown;
758 void (float) Menu_Reselect;
759 void (entity, bool) Menu_CorrectSelection;
760 void (entity, bool) Menu_Select;
761 void (entity, float, float) Menu_JumpToWindow;
762 float (entity) Menu_HasEvents;
763 void (entity) Menu_SetRunFlag;
764 void (entity, entity) Menu_InheritRunFlag;
765 void () Menu_UpdateRunFlags;
766 void (entity) Menu_EmptyWindow;
767 void (entity) Menu_RemoveItem;
768 entity (entity, string, bool) Menu_GetItemEx;
769 entity (entity, string, bool) Menu_GetChildEx;
770 entity (string) Menu_GetItem;
771 entity (string) Menu_GetChild;
772 float MENU_SELECT_SELECTABLE;
773 float MENU_SELECT_ALWAYS;
774 float MENU_SELECT_NEVER;
775 float MENU_EVENT_NORMAL;
776 float MENU_EVENT_CONTINUE;
777 float MENU_EVENT_RAISEPARENT;
778 float MENU_EVENT_PROCESSED;
779 float MENU_PROCESS_RUNFLAG;
780 float MENU_PROCESS_UPDATE;
781 float MENU_PROCESS_DRAW;
782 float MENU_PROCESS_MOUSE;
783 float MENU_PROCESS_KEY;
784 float Menu_Cursor_Position_x;
785 float Menu_Cursor_Position_y;
786 float Menu_Cursor_Position_z;
787 vector Menu_Cursor_Position;
788 entity Menu_KeyHook_Target;
789 void (float, float) Menu_KeyHook;
792 void (float, float) Menu_Key;
793 float () Menu_Toggle;
794 void () Menu_Process_Setup;
795 float (entity, float, float, float, float) Menu_Process;
797 void (entity, Menu_History_PopFunction) Menu_History_Push;
798 void () Menu_History_Pop;
799 float (entity) Menu_History_Verify;
800 void () Menu_History_Clear;
801 float Menu_GarbageFrameCount;
802 float Menu_GarbageToggleCount;
803 void () Menu_InitGarbageStats;
804 void () Menu_ResetGarbageStats;
805 float (entity) Menu_CheckForGarbage;
806 void (float) Menu_CollectGarbage;
807 void (entity) Menu_DeleteAfterFrame;
808 void (entity) Menu_DeleteAfterToggle;
809 float ITEM_ALIGN_LEFT;
810 float ITEM_ALIGN_CENTER;
811 float ITEM_ALIGN_RIGHT;
812 float ITEM_ALIGN_FIX_RIGHT;
813 float ITEM_ALIGN_FIX_CENTER;
814 float ITEM_ALIGN_FIX_LEFT;
815 float ITEM_ALIGN_FIRST;
820 float FLAG_CONNECTEDONLY;
821 float FLAG_SERVERONLY;
822 float FLAG_DEVELOPERONLY;
824 float FLAG_CHILDDRAWONLY;
825 float FLAG_DRAWUPDATEONLY;
826 float FLAG_CHILDDRAWUPDATEONLY;
827 float FLAG_SEALOFFMOUSE;
829 void () Item_Link_Init;
830 void () Item_Link_Destroy;
831 void () Item_Link_Update;
832 float (float, float) Item_Link_Key;
833 void () Item_Link_MouseEnter;
834 float () Item_Link_IsSelected;
837 void () Item_Cinematic_Destroy;
838 void () Item_Cinematic_Init;
839 void () Item_Cinematic_Loop_Spawn;
840 void () Item_Container_Spawn;
842 string ITEM_SOUND_NOSELECT;
843 float ITEM_BUTTON_ACTIONTIME;
844 float ITEM_EDITBOX_CURSOR_FREQ;
845 float ITEM_EDITBOX_FLASHTIME;
846 float ITEM_EDITBOX_SCROLLDISTANCE;
847 float ITEM_DATA_SYNC;
848 float ITEM_DATA_SEND;
849 float ITEM_DATA_RESET;
850 float ITEM_DATA_TEST_START;
851 float ITEM_DATA_TEST_END;
852 float ITEM_DATA_SAVE_EXECSTRING;
853 float ITEM_DATALINK_SET;
854 float ITEM_DATALINK_GET;
855 void (entity, bool) Raise_DataEvent;
856 string Data_ExecString;
857 void () Data_ExecString_BeginUse;
858 void () Data_ExecString_EndUse;
861 .void (float) _dataEvent;
862 void () Item_Data_Init;
863 void () Item_Data_Destroy;
866 void () Item_DataUser_Update;
867 void () Item_DataUser_Init;
868 void () Item_DataUser_Destroy;
869 void () Item_DataLink_Init;
870 void () Item_DataLink_Destroy;
871 void () Item_DataLink_Update;
872 void (float) Item_DataContainer_DataEvent;
873 void () Item_DataContainer_Spawn;
874 void () Item_Data_Container_Reinit;
875 void (float) Item_Data_Container_DataEvent;
876 void () Item_Data_Container_Spawn;
878 void (float) Item_Data_Cvar_DataEvent;
879 void () Item_Data_Cvar_Spawn;
880 void () Item_Data_CvarCreateSave_Spawn;
885 void () Item_DataLink_Value_Clamp;
886 void () Item_DataLink_Value_Spawn;
888 void () Item_DataLink_Switch_Init;
889 void () Item_DataLink_Switch_Destroy;
890 float (entity, float) DataLink_Switch_GetOrdinal;
891 void () Item_DataLink_ValueSwitch_Spawn;
893 void (float) Item_DataLink_TextSwitch_DataEvent;
894 void () Item_DataLink_TextSwitch_Destroy;
895 void () Item_DataLink_TextSwitch_Spawn;
897 void () Item_DataLink_FastResync_Spawn;
898 void () Item_DataLink_TextValue_Spawn;
899 void () Item_DataLink_TextTime_Spawn;
900 void () Item_DataLink_AltString_Spawn;
901 void () Item_DataLink_Router_Spawn;
902 float (float, float) Item_Window_Key;
903 void () Item_Window_Draw;
904 void () Item_Window_Spawn;
905 void () Item_Frame_Spawn;
906 void () Item_EventWindow_Spawn;
907 void () Item_Reference_Update;
908 void () Item_Reference_Draw;
909 void () Item_Reference_Destroy;
910 void () Item_Reference_Spawn;
916 void () Item_Layout_Spawn;
917 void () Item_Layout_Update;
918 void () Item_Arrangement_CalculateSize;
919 void () Item_Arrangement_Update;
920 void () Item_Arrangement_Spawn;
921 void () Item_ScrollWindow_Update;
922 void () Item_ScrollWindow_Spawn;
923 float ITEM_STATE_NORMAL;
924 float ITEM_STATE_SELECTED;
925 float ITEM_STATE_PRESSED;
933 void () Item_Picture_Draw;
934 void () Item_Picture_Destroy;
935 void () Item_Picture_Spawn;
936 void () Item_Rect_Draw;
937 void () Item_Rect_Spawn;
943 void () Item_Label_Draw;
944 void () Item_Label_Update;
945 void () Item_Label_Destroy;
946 void () Item_Label_Spawn;
948 void () Item_MultiLabel_Update;
949 void () Item_MultiLabel_Draw;
950 void () Item_MultiLabel_Destroy;
951 void () Item_MultiLabel_Spawn;
954 .float colorSelected_x;
955 .float colorSelected_y;
956 .float colorSelected_z;
957 .vector colorSelected;
958 .float colorPressed_x;
959 .float colorPressed_y;
960 .float colorPressed_z;
961 .vector colorPressed;
970 .string soundSelected;
971 .string soundPressed;
973 void () Item_Button_Draw;
974 void () Item_Button_Update;
975 void (float, float) Item_Button_Select;
976 float (float, float) Item_Button_Key;
977 void () Item_Button_Destroy;
978 void () Item_Button_Spawn;
979 .float proportions_x;
980 .float proportions_y;
981 .float proportions_z;
983 .string pictureSlider;
984 .string soundIncrease;
985 .string soundDecrease;
990 void (float, float) Item_Slider_Select;
991 void () Item_Slider_Draw;
992 float (float, float) Item_Slider_Key;
993 void () Item_Slider_Destroy;
994 void () Item_Slider_Spawn;
995 .float colorCursor_x;
996 .float colorCursor_y;
997 .float colorCursor_z;
999 .float colorCursorFlash_x;
1000 .float colorCursorFlash_y;
1001 .float colorCursorFlash_z;
1002 .vector colorCursorFlash;
1003 .float sizeCursor_x;
1004 .float sizeCursor_y;
1005 .float sizeCursor_z;
1007 .float sizeCursorFlash_x;
1008 .float sizeCursorFlash_y;
1009 .float sizeCursorFlash_z;
1010 .vector sizeCursorFlash;
1011 .float alphasCursor_x;
1012 .float alphasCursor_y;
1013 .float alphasCursor_z;
1014 .vector alphasCursor;
1015 .float drawFlagsCursor_x;
1016 .float drawFlagsCursor_y;
1017 .float drawFlagsCursor_z;
1018 .vector drawFlagsCursor;
1022 void () Item_EditBox_Draw;
1023 void () Item_EditBox_Update;
1024 float (float, float) Item_EditBox_Key;
1025 void (float, float) Item_EditBox_Select;
1026 void () Item_EditBox_Destroy;
1027 void () Item_EditBox_Reinit;
1028 void () Item_EditBox_Spawn;
1029 void () Item_ValueButton_Update;
1030 void () Item_ValueButton_Destroy;
1031 void () Item_ValueButton_Spawn;
1032 float (float, float) Item_SwitchButton_Key;
1033 void () Item_SwitchButton_Spawn;
1034 .float colorInactive_x;
1035 .float colorInactive_y;
1036 .float colorInactive_z;
1037 .vector colorInactive;
1038 .float drawFlagInactive;
1039 .float alphaInactive;
1040 void () Item_List_Draw;
1041 void () Item_List_Update;
1042 void (float, float) Item_List_Select;
1043 float (float, float) Item_List_Key;
1044 void () Item_List_Destroy;
1045 void () Item_List_Spawn;
1046 float (float, float) Item_FloatingArea_Key;
1047 void () Item_FloatingArea_Update;
1048 void () Item_FloatingArea_Spawn;
1049 void () Item_VScrollBar_Draw;
1050 float (float, float) Item_VScrollBar_Key;
1051 void () Item_VScrollBar_Update;
1052 void () Item_VScrollBar_Spawn;
1053 void () Item_Automation_Init;
1055 void () Item_Automation_ForEach_Spawn;
1056 void () Item_Task_Init;
1057 void () Item_Automation_Job_Spawn;
1058 void () Item_Task_Job_Spawn;
1059 void (entity) Nex_MakeOnlyVisible;
1060 void () Item_Nex_Avatar_Info_Destroy;
1061 void () Item_Nex_Avatar_Info_Spawn;
1062 void (float) Item_Data_Nex_Avatar_DataEvent;
1063 void () Item_Data_Nex_Avatar_Spawn;
1064 void (float) Item_Data_Nex_Name_DataEvent;
1065 void () Item_Data_Nex_Name_Spawn;
1066 void (float) Item_Data_Nex_Color_DataEvent;
1067 void () Item_Data_Nex_Color_Spawn;
1068 void () Item_Nex_Map_Info_Destroy;
1069 void () Item_Nex_Map_Info_Spawn;
1070 void () Item_Nex_MapDB_EnumFiles;
1071 void () Item_Nex_MapDB_Destroy;
1072 void () Item_Nex_MapDB_Spawn;
1073 entity (string) Nex_MapDB_GetByPath;
1074 entity (float) Nex_MapDB_GetByIndex;
1075 float (entity) Nex_MapDB_GetIndex;
1076 string () Nex_MapDB_GetPathAltString;
1077 string () Nex_MapDB_GetNameAltString;
1078 void (float) Item_DataLink_Nex_MapList_DataEvent;
1079 void () Item_DataLink_Nex_MapList_Spawn;
1080 void () Item_DataLink_Nex_MapList_InitWithMapList;
1081 void (entity) DataLink_Nex_MapList_UpdateRange;
1082 void (entity, string, string) DataLink_Nex_MapList_InsertEntryAfter;
1083 void (entity) DataLink_Nex_MapList_DeleteEntry;
1084 void (entity) DataLink_Nex_MapList_MoveEntryUp;
1085 void (entity) DataLink_Nex_MapList_MoveEntryDown;
1086 void (entity, string, string) DataLink_Nex_MapList_SetFirst;
1087 void (entity) DataLink_Nex_MapList_Clear;
1088 string (entity) DataLink_Nex_MapList_GetCurrentName;
1089 string (entity) DataLink_Nex_MapList_GetCurrentPath;
1090 void () Item_DataLink_Nex_ModSwitch_Spawn;
1091 void (float) Item_DataLink_Nex_FileList_DataEvent;
1092 void () Item_DataLink_Nex_FileList_Destroy;
1093 void () Item_DataLink_Nex_FileList_Spawn;
1094 void () Item_Nex_HostCache_Entry_Update;
1095 void () Item_Nex_HostCache_Entry_Spawn;
1096 void () Item_Nex_HostCache_StringField_Update;
1097 void () Item_Nex_HostCache_StringField_Spawn;
1098 void () Item_Nex_HostCache_ValueField_Update;
1099 void () Item_Nex_HostCache_ValueField_Spawn;
1100 void () Item_Nex_HostCache_Players_Update;
1101 void () Item_Nex_HostCache_Players_Spawn;
1102 void (float) Item_Data_Nex_Key_DataEvent;
1103 void () Item_Data_Nex_Key_Spawn;
1104 void () Item_Nex_KeyButton_Spawn;
1105 void () Item_Data_Nex_Resolution_Spawn;
1106 void () Item_Nex_Credits_Spawn;
1107 void (string, string, string, string, event, event) Nex_MessageBox;
1108 void () Nex_Quit_Toggle;
1109 void() Nex_Quit_Toggle = asm
1111 local entity lEntity;
1114 STORE_F "QuitWnd", parm0_x;
1116 STORE_ENT return_x, lEntity;
1117 INDIRECT_F lEntity, flag, temp_1;
1118 BITAND temp_1, FLAG_HIDDEN, temp_1;
1120 ADDRESS lEntity, flag, temp_1;
1121 INDIRECT_F lEntity, flag, temp_0;
1122 SUB_F temp_0, FLAG_HIDDEN, temp_0;
1123 STOREP_F temp_0, temp_1;
1124 STORE_F "QuitWnd::Layout::Buttons::No", parm0_x;
1126 STORE_F return_x, parm0_x;
1127 STORE_F KEY_GAME, parm1_x;
1130 ADDRESS lEntity, flag, temp_0;
1131 INDIRECT_F lEntity, flag, temp_1;
1132 ADD_F temp_1, FLAG_HIDDEN, temp_1;
1133 STOREP_F temp_1, temp_0;
1134 STORE_F KEY_GAME, parm0_x;
1135 CALL1 Menu_Reselect;
1139 void () Nex_Quit_Action;
1140 void() Nex_Quit_Action = asm
1142 local entity lEntity;
1145 STORE_F "QuitWnd", parm0_x;
1147 STORE_ENT return_x, lEntity;
1148 INDIRECT_F lEntity, flag, temp_0;
1149 BITAND temp_0, FLAG_HIDDEN, temp_0;
1151 ADDRESS lEntity, flag, temp_0;
1152 INDIRECT_F lEntity, flag, temp_1;
1153 SUB_F temp_1, FLAG_HIDDEN, temp_1;
1154 STOREP_F temp_1, temp_0;
1155 STORE_F "QuitWnd::Layout::Buttons::No", parm0_x;
1157 STORE_F return_x, parm0_x;
1158 STORE_F KEY_GAME, parm1_x;
1163 float (float, float) Nex_Quit_Key;
1164 float(float pKey, float pAscii) Nex_Quit_Key = asm
1167 EQ_F pKey, K_ESCAPE, temp_0;
1169 CALL0 Nex_Quit_Toggle;
1175 void () Nex_Quit_Yes;
1176 void() Nex_Quit_Yes = asm
1184 void () Nex_Quit_No;
1185 void() Nex_Quit_No = asm
1187 CALL0 Nex_Quit_Toggle;
1191 void () Nex_Action_ResetData_Destroy;
1192 void() Nex_Action_ResetData_Destroy = asm
1194 STORE_F self, parm0_x;
1195 STORE_F target, parm1_x;
1196 CALL2 String_EntityFree;
1200 void () Nex_Action_ResetData_Action;
1201 void() Nex_Action_ResetData_Action = asm
1204 INDIRECT_S self, target, parm0_x;
1206 STORE_F return_x, parm0_x;
1207 STORE_F ITEM_DATA_RESET, parm1_x;
1208 CALL2 Raise_DataEvent;
1212 void () Nex_Action_ResetData;
1213 void() Nex_Action_ResetData = asm
1216 STORE_F self, parm0_x;
1217 STORE_F target, parm1_x;
1218 CALL2 String_EntityZone;
1219 ADDRESS self, destroy, temp_0;
1220 STOREP_FNC Nex_Action_ResetData_Destroy, temp_0;
1221 ADDRESS self, action, temp_0;
1222 STOREP_FNC Nex_Action_ResetData_Action, temp_0;
1226 void () Nex_Automation_Option_Slider;
1227 void() Nex_Automation_Option_Slider = asm
1229 local entity lValue;
1230 local entity lSlider;
1231 local entity lDescription;
1234 INDIRECT_E self, _parent, temp_0;
1235 INDIRECT_S temp_0, target, temp_0;
1236 NOT_S temp_0, temp_0;
1238 INDIRECT_E self, _parent, temp_0;
1239 INDIRECT_S temp_0, target, temp_0;
1240 STORE_F "Bad target '", parm0_x;
1241 STORE_F temp_0, parm1_x;
1242 STORE_F "'", parm2_x;
1245 STORE_F "Description", parm0_x;
1247 STORE_ENT return_x, lDescription;
1248 STORE_F "Slider", parm0_x;
1250 STORE_ENT return_x, lSlider;
1251 STORE_F "Value", parm0_x;
1253 STORE_ENT return_x, lValue;
1254 ADDRESS lDescription, normal, temp_0;
1255 INDIRECT_E self, _parent, temp_1;
1256 INDIRECT_S temp_1, text, temp_1;
1257 STOREP_S temp_1, temp_0;
1258 ADDRESS lDescription, link, temp_0;
1259 INDIRECT_S lSlider, name, temp_1;
1260 STOREP_S temp_1, temp_0;
1261 ADDRESS lSlider, target, temp_0;
1262 INDIRECT_E self, _parent, temp_1;
1263 INDIRECT_S temp_1, target, temp_1;
1264 STOREP_S temp_1, temp_0;
1265 ADDRESS lValue, target, temp_0;
1266 INDIRECT_E self, _parent, temp_1;
1267 INDIRECT_S temp_1, target, temp_1;
1268 STOREP_S temp_1, temp_0;
1269 ADDRESS lValue, link, temp_0;
1270 INDIRECT_S lSlider, name, temp_1;
1271 STOREP_S temp_1, temp_0;
1275 void () Nex_Automation_Option_EditBox;
1276 void() Nex_Automation_Option_EditBox = asm
1278 local entity lEditBox;
1279 local entity lDescription;
1282 INDIRECT_E self, _parent, temp_0;
1283 INDIRECT_S temp_0, target, temp_0;
1284 NOT_S temp_0, temp_0;
1286 INDIRECT_E self, _parent, temp_0;
1287 INDIRECT_S temp_0, target, temp_0;
1288 STORE_F "Bad target '", parm0_x;
1289 STORE_F temp_0, parm1_x;
1290 STORE_F "'", parm2_x;
1293 STORE_F "Description", parm0_x;
1295 STORE_ENT return_x, lDescription;
1296 STORE_F "EditBox", parm0_x;
1298 STORE_ENT return_x, lEditBox;
1299 ADDRESS lDescription, normal, temp_0;
1300 INDIRECT_E self, _parent, temp_1;
1301 INDIRECT_S temp_1, text, temp_1;
1302 STOREP_S temp_1, temp_0;
1303 ADDRESS lDescription, link, temp_0;
1304 INDIRECT_S lEditBox, name, temp_1;
1305 STOREP_S temp_1, temp_0;
1306 ADDRESS lEditBox, target, temp_0;
1307 INDIRECT_E self, _parent, temp_1;
1308 INDIRECT_S temp_1, target, temp_1;
1309 STOREP_S temp_1, temp_0;
1313 void () Nex_Automation_Option_Switch;
1314 void() Nex_Automation_Option_Switch = asm
1316 local entity lSwitch;
1317 local entity lDescription;
1320 INDIRECT_E self, _parent, temp_0;
1321 INDIRECT_S temp_0, target, temp_0;
1322 NOT_S temp_0, temp_0;
1324 INDIRECT_E self, _parent, temp_0;
1325 INDIRECT_S temp_0, target, temp_0;
1326 STORE_F "Bad target '", parm0_x;
1327 STORE_F temp_0, parm1_x;
1328 STORE_F "'", parm2_x;
1331 STORE_F "Description", parm0_x;
1333 STORE_ENT return_x, lDescription;
1334 STORE_F "Switch", parm0_x;
1336 STORE_ENT return_x, lSwitch;
1337 ADDRESS lDescription, normal, temp_0;
1338 INDIRECT_E self, _parent, temp_1;
1339 INDIRECT_S temp_1, text, temp_1;
1340 STOREP_S temp_1, temp_0;
1341 ADDRESS lDescription, link, temp_0;
1342 INDIRECT_S lSwitch, name, temp_1;
1343 STOREP_S temp_1, temp_0;
1344 ADDRESS lSwitch, target, temp_0;
1345 INDIRECT_E self, _parent, temp_1;
1346 INDIRECT_S temp_1, target, temp_1;
1347 STOREP_S temp_1, temp_0;
1351 float (float, float) Nex_Global_Key;
1352 float(float pKey, float pAscii) Nex_Global_Key = asm
1356 STORE_F FILE_APPEND, parm0_x;
1357 CALL1 Menu_SelectPrev;
1359 STORE_F FILE_APPEND, parm0_x;
1360 CALL1 Menu_SelectNext;
1362 STORE_F FILE_APPEND, parm0_x;
1363 CALL1 Menu_SelectUp;
1365 STORE_F FILE_APPEND, parm0_x;
1366 CALL1 Menu_SelectDown;
1368 STORE_F ITEM_SOUND_NOSELECT, parm0_x;
1372 EQ_F pKey, K_UPARROW, temp_0;
1374 EQ_F pKey, K_KP_UPARROW, temp_0;
1376 EQ_F pKey, K_LEFTARROW, temp_0;
1378 EQ_F pKey, K_KP_LEFTARROW, temp_0;
1380 EQ_F pKey, K_DOWNARROW, temp_0;
1382 EQ_F pKey, K_KP_DOWNARROW, temp_0;
1384 EQ_F pKey, K_RIGHTARROW, temp_0;
1386 EQ_F pKey, K_KP_RIGHTARROW, temp_0;
1388 EQ_F pKey, K_ESCAPE, temp_0;
1390 EQ_F pKey, K_MOUSE2, temp_0;
1392 EQ_F pKey, K_ENTER, temp_0;
1399 void () Item_Nex_StressRepeat_Spawn;
1400 void() Item_Nex_StressRepeat_Spawn = asm
1402 local float locked_1020;
1403 local float lCounter;
1406 ADDRESS self, flag, locked_1020;
1407 INDIRECT_F self, flag, temp_1;
1408 BITOR temp_1, FLAG_EMBEDDED, temp_1;
1409 STOREP_F temp_1, locked_1020;
1410 STORE_F KEY_GAME, lCounter;
1411 LT lCounter, 100.000000, locked_1020;
1412 IFNOT locked_1020, 14;
1413 INDIRECT_E self, _child, locked_1020;
1414 STORE_F lCounter, parm0_x;
1416 INDIRECT_E self, _parent, temp_1;
1417 INDIRECT_S temp_1, name, temp_1;
1418 STORE_F locked_1020, parm0_x;
1419 STORE_F return_x, parm1_x;
1420 STORE_F temp_1, parm2_x;
1421 STORE_F FILE_APPEND, parm3_x;
1422 CALL4 Menu_DeriveItem;
1423 STORE_ENT return_x, lItem;
1424 ADD_F lCounter, FILE_APPEND, lCounter;
1429 void () Nex_Action_MakeOnlyVisible_Destroy;
1430 void() Nex_Action_MakeOnlyVisible_Destroy = asm
1432 STORE_F self, parm0_x;
1433 STORE_F target, parm1_x;
1434 CALL2 String_EntityFree;
1438 void () Nex_Action_MakeOnlyVisible_Action;
1439 void() Nex_Action_MakeOnlyVisible_Action = asm
1442 INDIRECT_S self, target, parm0_x;
1444 STORE_F return_x, parm0_x;
1445 CALL1 Nex_MakeOnlyVisible;
1449 void () Nex_Action_MakeOnlyVisible;
1450 void() Nex_Action_MakeOnlyVisible = asm
1453 STORE_F self, parm0_x;
1454 STORE_F target, parm1_x;
1455 CALL2 String_EntityZone;
1456 ADDRESS self, destroy, temp_0;
1457 STOREP_FNC Nex_Action_MakeOnlyVisible_Destroy, temp_0;
1458 ADDRESS self, action, temp_0;
1459 STOREP_FNC Nex_Action_MakeOnlyVisible_Action, temp_0;
1463 void () Nex_Action_MakeFirstVisible;
1464 void() Nex_Action_MakeFirstVisible = asm
1467 INDIRECT_E self, _child, parm0_x;
1468 CALL1 Nex_MakeOnlyVisible;
1472 void () Nex_Action_JumpToPage_Destroy;
1473 void() Nex_Action_JumpToPage_Destroy = asm
1475 STORE_F self, parm0_x;
1476 STORE_F target, parm1_x;
1477 CALL2 String_EntityFree;
1481 void () Nex_Action_JumpToPage_Action;
1482 void() Nex_Action_JumpToPage_Action = asm
1486 INDIRECT_S self, target, parm0_x;
1488 STORE_ENT return_x, lItem;
1489 STORE_F lItem, parm0_x;
1490 CALL1 Nex_MakeOnlyVisible;
1491 STORE_F lItem, parm0_x;
1492 STORE_F KEY_GAME, parm1_x;
1493 STORE_F KEY_GAME, parm2_x;
1494 CALL3 Menu_JumpToWindow;
1498 void () Nex_Action_JumpToPage;
1499 void() Nex_Action_JumpToPage = asm
1502 STORE_F self, parm0_x;
1503 STORE_F target, parm1_x;
1504 CALL2 String_EntityZone;
1505 ADDRESS self, action, temp_0;
1506 STOREP_FNC Nex_Action_JumpToPage_Action, temp_0;
1507 ADDRESS self, destroy, temp_0;
1508 STOREP_FNC Nex_Action_JumpToPage_Destroy, temp_0;
1512 void () Nex_Action_SetNormalPanelLink_Destroy;
1513 void() Nex_Action_SetNormalPanelLink_Destroy = asm
1515 STORE_F self, parm0_x;
1516 STORE_F target, parm1_x;
1517 CALL2 String_EntityFree;
1521 void () Nex_Action_SetNormalPanelLink_Action;
1522 void() Nex_Action_SetNormalPanelLink_Action = asm
1526 STORE_F "Normal::Panel", parm0_x;
1528 STORE_ENT return_x, lItem;
1529 INDIRECT_S self, target, temp_0;
1530 STORE_F lItem, parm0_x;
1531 STORE_F link, parm1_x;
1532 STORE_F temp_0, parm2_x;
1533 CALL3 String_EntitySet;
1534 STORE_F lItem, parm0_x;
1536 CALL0 Menu_UpdateRunFlags;
1537 INDIRECT_E lItem, _link, parm0_x;
1538 STORE_F KEY_GAME, parm1_x;
1539 STORE_F KEY_GAME, parm2_x;
1540 CALL3 Menu_JumpToWindow;
1544 void () Nex_Action_SetNormalPanelLink;
1545 void() Nex_Action_SetNormalPanelLink = asm
1548 STORE_F self, parm0_x;
1549 STORE_F target, parm1_x;
1550 CALL2 String_EntityZone;
1551 ADDRESS self, destroy, temp_0;
1552 STOREP_FNC Nex_Action_SetNormalPanelLink_Destroy, temp_0;
1553 ADDRESS self, action, temp_0;
1554 STOREP_FNC Nex_Action_SetNormalPanelLink_Action, temp_0;
1558 void () Nex_Action_SetLinkOnReinit_Destroy;
1559 void() Nex_Action_SetLinkOnReinit_Destroy = asm
1561 STORE_F self, parm0_x;
1562 STORE_F target, parm1_x;
1563 CALL2 String_EntityFree;
1567 void () Nex_Action_SetLinkOnReinitk_Reinit;
1568 void() Nex_Action_SetLinkOnReinitk_Reinit = asm
1571 STORE_F "Normal::Panel", parm0_x;
1573 INDIRECT_S self, target, temp_0;
1574 STORE_F return_x, parm0_x;
1575 STORE_F link, parm1_x;
1576 STORE_F temp_0, parm2_x;
1577 CALL3 String_EntitySet;
1581 void () Nex_Action_SetLinkOnReinit;
1582 void() Nex_Action_SetLinkOnReinit = asm
1585 STORE_F self, parm0_x;
1586 STORE_F target, parm1_x;
1587 CALL2 String_EntityZone;
1588 ADDRESS self, destroy, temp_0;
1589 STOREP_FNC Nex_Action_SetLinkOnReinit_Destroy, temp_0;
1590 ADDRESS self, reinit, temp_0;
1591 STOREP_FNC Nex_Action_SetLinkOnReinitk_Reinit, temp_0;
1595 void () Nex_Action_Color_Cancel;
1596 void() Nex_Action_Color_Cancel = asm
1598 STORE_F "::Data::Color", parm0_x;
1600 STORE_F return_x, parm0_x;
1601 STORE_F ITEM_DATA_TEST_END, parm1_x;
1602 CALL2 Raise_DataEvent;
1606 void () Nex_Action_Color_Reset;
1607 void() Nex_Action_Color_Reset = asm
1609 STORE_F "::Data::Color", parm0_x;
1611 STORE_F return_x, parm0_x;
1612 STORE_F ITEM_DATA_RESET, parm1_x;
1613 CALL2 Raise_DataEvent;
1617 void () Nex_Automation_UpdateAvatar_Update;
1618 void() Nex_Automation_UpdateAvatar_Update = asm
1620 local float locked_1020;
1621 local entity lTarget;
1623 INDIRECT_E self, _target, locked_1020;
1624 INDIRECT_S locked_1020, name, locked_1020;
1625 NE_S locked_1020, "Data::Player::Avatar", locked_1020;
1626 IFNOT locked_1020, 5;
1627 ADDRESS self, _target, locked_1020;
1628 STORE_F "Data::Player::Avatar", parm0_x;
1630 STOREP_ENT return_x, locked_1020;
1631 INDIRECT_E self, _target, lTarget;
1632 STORE_F "Picture", parm0_x;
1634 STORE_ENT return_x, lItem;
1635 INDIRECT_E lTarget, _link, locked_1020;
1636 INDIRECT_S locked_1020, picture, locked_1020;
1637 STORE_F lItem, parm0_x;
1638 STORE_F picture, parm1_x;
1639 STORE_F locked_1020, parm2_x;
1640 CALL3 String_EntitySet;
1641 STORE_F "Name", parm0_x;
1643 STORE_ENT return_x, lItem;
1644 INDIRECT_E lTarget, _link, locked_1020;
1645 INDIRECT_S locked_1020, normal, locked_1020;
1646 STORE_F lItem, parm0_x;
1647 STORE_F text, parm1_x;
1648 STORE_F locked_1020, parm2_x;
1649 CALL3 String_EntitySet;
1650 STORE_F "Description", parm0_x;
1652 STORE_ENT return_x, lItem;
1653 INDIRECT_E lTarget, _link, locked_1020;
1654 INDIRECT_S locked_1020, text, locked_1020;
1655 STORE_F lItem, parm0_x;
1656 STORE_F text, parm1_x;
1657 STORE_F locked_1020, parm2_x;
1658 CALL3 String_EntitySet;
1662 void () Nex_Automation_UpdateAvatar_Destroy;
1663 void() Nex_Automation_UpdateAvatar_Destroy = asm
1665 STORE_F self, parm0_x;
1666 STORE_F target, parm1_x;
1667 CALL2 String_EntityFree;
1671 void () Nex_Automation_UpdateAvatar;
1672 void() Nex_Automation_UpdateAvatar = asm
1675 STORE_F self, parm0_x;
1676 STORE_F target, parm1_x;
1677 CALL2 String_EntityZone;
1678 ADDRESS self, _update, temp_0;
1679 STOREP_FNC Nex_Automation_UpdateAvatar_Update, temp_0;
1680 ADDRESS self, _destroy, temp_0;
1681 STOREP_FNC Nex_Automation_UpdateAvatar_Destroy, temp_0;
1685 void () Nex_Action_Avatar_Next;
1686 void() Nex_Action_Avatar_Next = asm
1691 STORE_F "Data::Player::Avatar", parm0_x;
1693 STORE_ENT return_x, lItem;
1694 ADDRESS lItem, _realValue, temp_0;
1695 INDIRECT_F lItem, _realValue, temp_1;
1696 ADD_F temp_1, FILE_APPEND, temp_1;
1697 STOREP_F temp_1, temp_0;
1698 STORE_F lItem, parm0_x;
1699 STORE_F ITEM_DATALINK_SET, parm1_x;
1700 CALL2 Raise_DataEvent;
1704 void () Nex_Action_Avatar_Prev;
1705 void() Nex_Action_Avatar_Prev = asm
1710 STORE_F "Data::Player::Avatar", parm0_x;
1712 STORE_ENT return_x, lItem;
1713 ADDRESS lItem, _realValue, temp_0;
1714 INDIRECT_F lItem, _realValue, temp_1;
1715 SUB_F temp_1, FILE_APPEND, temp_1;
1716 STOREP_F temp_1, temp_0;
1717 STORE_F lItem, parm0_x;
1718 STORE_F ITEM_DATALINK_SET, parm1_x;
1719 CALL2 Raise_DataEvent;
1723 void () Nex_Action_Player_Apply;
1724 void() Nex_Action_Player_Apply = asm
1727 STORE_F "Data::Player", parm0_x;
1729 STORE_ENT return_x, lItem;
1730 STORE_F lItem, parm0_x;
1731 STORE_F ITEM_DATA_SEND, parm1_x;
1732 CALL2 Raise_DataEvent;
1736 void () Nex_Action_TestOnChange;
1737 void() Nex_Action_TestOnChange = asm
1740 INDIRECT_E self, _target, parm0_x;
1741 STORE_F ITEM_DATA_TEST_START, parm1_x;
1742 CALL2 Raise_DataEvent;
1746 void (float, float) Nex_Action_TestOnSelect;
1747 void(float pSelect, float pUser) Nex_Action_TestOnSelect = asm
1750 NOT_F pSelect, temp_0;
1752 AND temp_0, pUser, temp_0;
1754 INDIRECT_E self, _target, parm0_x;
1755 STORE_F ITEM_DATA_TEST_START, parm1_x;
1756 CALL2 Raise_DataEvent;
1760 void () Nex_Action_PlaySound;
1762 void() Nex_Action_PlaySound = asm
1765 INDIRECT_S self, target, temp_0;
1766 NE_S temp_0, string_null, temp_0;
1768 INDIRECT_S self, target, parm0_x;
1773 void () Nex_Action_PlaySoundOnce;
1774 void() Nex_Action_PlaySoundOnce = asm
1777 INDIRECT_S self, target, temp_0;
1778 NE_S temp_0, string_null, temp_0;
1780 INDIRECT_S self, target, parm0_x;
1782 STORE_F self, parm0_x;
1783 CALL1 Menu_DeleteAfterToggle;
1787 void () Nex_MapSelector_UpdateMap;
1788 void() Nex_MapSelector_UpdateMap = asm
1791 local entity lSelector;
1796 STORE_F "::Data::Server::Map::Selector", parm0_x;
1798 STORE_ENT return_x, lSelector;
1799 STORE_F lSelector, parm0_x;
1800 STORE_F ITEM_DATALINK_GET, parm1_x;
1801 CALL2 Raise_DataEvent;
1802 INDIRECT_F lSelector, _realValue, lIndex;
1803 STORE_F lIndex, parm0_x;
1804 CALL1 Nex_MapDB_GetByIndex;
1805 STORE_ENT return_x, lInfo;
1806 INDIRECT_F self, minValue, temp_0;
1807 NE_F lIndex, temp_0, temp_0;
1809 ADDRESS self, minValue, temp_0;
1810 STOREP_F lIndex, temp_0;
1811 STORE_F "Picture", parm0_x;
1813 STORE_ENT return_x, lItem;
1814 INDIRECT_S lInfo, picture, temp_0;
1815 STORE_F lItem, parm0_x;
1816 STORE_F picture, parm1_x;
1817 STORE_F temp_0, parm2_x;
1818 CALL3 String_EntitySet;
1819 STORE_F "Name", parm0_x;
1821 STORE_ENT return_x, lItem;
1822 INDIRECT_S lInfo, normal, temp_0;
1823 STORE_F lItem, parm0_x;
1824 STORE_F text, parm1_x;
1825 STORE_F temp_0, parm2_x;
1826 CALL3 String_EntitySet;
1827 STORE_F "Description", parm0_x;
1829 STORE_ENT return_x, lItem;
1830 INDIRECT_S lInfo, text, temp_0;
1831 STORE_F lItem, parm0_x;
1832 STORE_F text, parm1_x;
1833 STORE_F temp_0, parm2_x;
1834 CALL3 String_EntitySet;
1835 STORE_F "::Data::Server::Map::Cycle", parm0_x;
1837 STORE_ENT return_x, lItem;
1838 INDIRECT_S lInfo, normal, temp_0;
1839 INDIRECT_S lInfo, link, temp_1;
1840 STORE_F lItem, parm0_x;
1841 STORE_F temp_0, parm1_x;
1842 STORE_F temp_1, parm2_x;
1843 CALL3 DataLink_Nex_MapList_SetFirst;
1847 void () Nex_MapSelector_Synchronize;
1848 void() Nex_MapSelector_Synchronize = asm
1850 local float locked_1020;
1851 local entity lMapInfo;
1853 local entity lSelector;
1854 local entity lCycle;
1855 STORE_F "::Data::Server::Map::Cycle", parm0_x;
1857 STORE_ENT return_x, lCycle;
1858 STORE_F "::Data::Server::Map::Selector", parm0_x;
1860 STORE_ENT return_x, lSelector;
1861 INDIRECT_F lCycle, stepValue, locked_1020;
1862 EQ_F locked_1020, KEY_GAME, locked_1020;
1863 IFNOT locked_1020, 5;
1864 STORE_F lCycle, parm0_x;
1865 STORE_F ITEM_DATA_RESET, parm1_x;
1866 CALL2 Raise_DataEvent;
1868 INDIRECT_S lCycle, valueList, parm0_x;
1869 STORE_F KEY_GAME, parm1_x;
1870 CALL2 Util_GetAltStringItem;
1871 STORE_S return_x, lPath;
1872 STORE_F lPath, parm0_x;
1873 CALL1 Nex_MapDB_GetByPath;
1874 STORE_ENT return_x, lMapInfo;
1875 STORE_F lPath, parm0_x;
1877 EQ_E lMapInfo, null_entity, locked_1020;
1878 IFNOT locked_1020, 5;
1879 STORE_F lCycle, parm0_x;
1880 STORE_F ITEM_DATA_RESET, parm1_x;
1881 CALL2 Raise_DataEvent;
1883 ADDRESS lSelector, _realValue, locked_1020;
1884 STORE_F lMapInfo, parm0_x;
1885 CALL1 Nex_MapDB_GetIndex;
1886 STOREP_F return_x, locked_1020;
1887 STORE_F lSelector, parm0_x;
1888 STORE_F ITEM_DATALINK_SET, parm1_x;
1889 CALL2 Raise_DataEvent;
1893 void () Nex_Action_MapSelector_Next;
1894 void() Nex_Action_MapSelector_Next = asm
1899 STORE_F "::Data::Server::Map::Selector", parm0_x;
1901 STORE_ENT return_x, lItem;
1902 STORE_F lItem, parm0_x;
1903 STORE_F ITEM_DATALINK_GET, parm1_x;
1904 CALL2 Raise_DataEvent;
1905 ADDRESS lItem, _realValue, temp_0;
1906 INDIRECT_F lItem, _realValue, temp_1;
1907 ADD_F temp_1, FILE_APPEND, temp_1;
1908 STOREP_F temp_1, temp_0;
1909 STORE_F lItem, parm0_x;
1910 STORE_F ITEM_DATALINK_SET, parm1_x;
1911 CALL2 Raise_DataEvent;
1915 void () Nex_Action_MapSelector_Prev;
1916 void() Nex_Action_MapSelector_Prev = asm
1921 STORE_F "::Data::Server::Map::Selector", parm0_x;
1923 STORE_ENT return_x, lItem;
1924 STORE_F lItem, parm0_x;
1925 STORE_F ITEM_DATALINK_GET, parm1_x;
1926 CALL2 Raise_DataEvent;
1927 ADDRESS lItem, _realValue, temp_0;
1928 INDIRECT_F lItem, _realValue, temp_1;
1929 SUB_F temp_1, FILE_APPEND, temp_1;
1930 STOREP_F temp_1, temp_0;
1931 STORE_F lItem, parm0_x;
1932 STORE_F ITEM_DATALINK_SET, parm1_x;
1933 CALL2 Raise_DataEvent;
1937 void () Nex_Action_Map_Start;
1938 void() Nex_Action_Map_Start = asm
1941 local float lNumBots;
1944 STORE_F "::Data::Server::NumBots", parm0_x;
1946 STORE_ENT return_x, lItem;
1947 INDIRECT_S lItem, value, parm0_x;
1949 STORE_F return_x, lNumBots;
1950 STORE_F "::Data::Server::BotSkill", parm0_x;
1952 STORE_ENT return_x, lItem;
1953 INDIRECT_S lItem, value, parm0_x;
1955 STORE_F return_x, lSkill;
1956 STORE_F "saved1", parm0_x;
1957 STORE_F "1", parm1_x;
1959 STORE_F KEY_MENU, parm0_x;
1960 STORE_F lNumBots, parm1_x;
1962 SUB_F return_x, FILE_APPEND, parm0_x;
1964 STORE_F "scratch1", parm0_x;
1965 STORE_F return_x, parm1_x;
1967 STORE_F lNumBots, parm0_x;
1968 STORE_F 8.000000, parm1_x;
1970 STORE_F CVAR_READONLY, parm0_x;
1971 STORE_F return_x, parm1_x;
1973 SUB_F return_x, FILE_APPEND, temp_0;
1974 MUL_F lSkill, temp_0, temp_0;
1975 DIV_F temp_0, KEY_UNKNOWN, parm0_x;
1977 STORE_F "scratch2", parm0_x;
1978 STORE_F return_x, parm1_x;
1980 SUB_F lNumBots, 8.000000, parm0_x;
1981 STORE_F 8.000000, parm1_x;
1983 STORE_F CVAR_READONLY, parm0_x;
1984 STORE_F return_x, parm1_x;
1986 SUB_F return_x, FILE_APPEND, temp_0;
1987 MUL_F lSkill, temp_0, temp_0;
1988 DIV_F temp_0, KEY_UNKNOWN, parm0_x;
1990 STORE_F "scratch3", parm0_x;
1991 STORE_F return_x, parm1_x;
1993 STORE_F "::Data::Server::MaxPlayers", parm0_x;
1995 STORE_ENT return_x, lItem;
1996 STORE_F "maxplayers "", parm0_x;
1998 INDIRECT_S lItem, value, parm0_x;
2003 STORE_F "::Data::Server::Map::Cycle", parm0_x;
2005 STORE_ENT return_x, lItem;
2006 STORE_F "map "", parm0_x;
2008 INDIRECT_S lItem, valueList, parm0_x;
2009 STORE_F KEY_GAME, parm1_x;
2010 CALL2 Util_GetAltStringItem;
2011 STORE_F return_x, parm0_x;
2012 CALL1 String_Normal;
2013 STORE_F return_x, parm0_x;
2018 STORE_F lItem, parm0_x;
2019 STORE_F ITEM_DATA_SEND, parm1_x;
2020 CALL2 Raise_DataEvent;
2025 void () Nex_Action_Cycle_Add;
2026 void() Nex_Action_Cycle_Add = asm
2030 local entity lCycle;
2034 STORE_F "::Data::Server::Map::List", parm0_x;
2036 STORE_ENT return_x, lList;
2037 STORE_F "::Data::Server::Map::Cycle", parm0_x;
2039 STORE_ENT return_x, lCycle;
2040 STORE_F lList, parm0_x;
2041 CALL1 DataLink_Nex_MapList_GetCurrentName;
2042 STORE_S return_x, lName;
2043 STORE_F lList, parm0_x;
2044 CALL1 DataLink_Nex_MapList_GetCurrentPath;
2045 STORE_S return_x, lPath;
2046 INDIRECT_F lCycle, stepValue, temp_0;
2047 EQ_F temp_0, FILE_APPEND, temp_0;
2049 STORE_F lCycle, parm0_x;
2050 STORE_F lName, parm1_x;
2051 STORE_F lPath, parm2_x;
2052 CALL3 DataLink_Nex_MapList_InsertEntryAfter;
2054 STORE_F lCycle, parm0_x;
2055 STORE_F lName, parm1_x;
2056 STORE_F lPath, parm2_x;
2057 CALL3 DataLink_Nex_MapList_SetFirst;
2058 STORE_F lName, parm0_x;
2060 STORE_F lPath, parm0_x;
2062 ADDRESS lCycle, _realValue, temp_0;
2063 INDIRECT_F lCycle, _realValue, temp_1;
2064 ADD_F temp_1, FILE_APPEND, temp_1;
2065 STOREP_F temp_1, temp_0;
2066 STORE_F lCycle, parm0_x;
2067 STORE_F ITEM_DATALINK_SET, parm1_x;
2068 CALL2 Raise_DataEvent;
2069 CALL0 Nex_MapSelector_Synchronize;
2073 void () Nex_Action_Cycle_Remove;
2074 void() Nex_Action_Cycle_Remove = asm
2076 local entity lCycle;
2077 STORE_F "::Data::Server::Map::Cycle", parm0_x;
2079 STORE_ENT return_x, lCycle;
2080 STORE_F lCycle, parm0_x;
2081 CALL1 DataLink_Nex_MapList_DeleteEntry;
2082 CALL0 Nex_MapSelector_Synchronize;
2086 void () Nex_Action_Cycle_MoveUp;
2087 void() Nex_Action_Cycle_MoveUp = asm
2089 local entity lCycle;
2092 STORE_F "::Data::Server::Map::Cycle", parm0_x;
2094 STORE_ENT return_x, lCycle;
2095 STORE_F lCycle, parm0_x;
2096 CALL1 DataLink_Nex_MapList_MoveEntryUp;
2097 ADDRESS lCycle, _realValue, temp_0;
2098 INDIRECT_F lCycle, _realValue, temp_1;
2099 SUB_F temp_1, FILE_APPEND, temp_1;
2100 STOREP_F temp_1, temp_0;
2101 STORE_F lCycle, parm0_x;
2102 STORE_F ITEM_DATALINK_SET, parm1_x;
2103 CALL2 Raise_DataEvent;
2104 CALL0 Nex_MapSelector_Synchronize;
2108 void () Nex_Action_Cycle_MoveDown;
2109 void() Nex_Action_Cycle_MoveDown = asm
2111 local entity lCycle;
2114 STORE_F "::Data::Server::Map::Cycle", parm0_x;
2116 STORE_ENT return_x, lCycle;
2117 STORE_F lCycle, parm0_x;
2118 CALL1 DataLink_Nex_MapList_MoveEntryDown;
2119 ADDRESS lCycle, _realValue, temp_0;
2120 INDIRECT_F lCycle, _realValue, temp_1;
2121 ADD_F temp_1, FILE_APPEND, temp_1;
2122 STOREP_F temp_1, temp_0;
2123 STORE_F lCycle, parm0_x;
2124 STORE_F ITEM_DATALINK_SET, parm1_x;
2125 CALL2 Raise_DataEvent;
2126 CALL0 Nex_MapSelector_Synchronize;
2130 void () Nex_Action_Cycle_Clear;
2131 void() Nex_Action_Cycle_Clear = asm
2133 local entity lCycle;
2134 STORE_F "::Data::Server::Map::Cycle", parm0_x;
2136 STORE_ENT return_x, lCycle;
2137 STORE_F lCycle, parm0_x;
2138 CALL1 DataLink_Nex_MapList_Clear;
2139 CALL0 Nex_MapSelector_Synchronize;
2143 entity (float) Nex_Management_GetFileList;
2144 entity(float pType) Nex_Management_GetFileList = asm
2148 STORE_F "::Data::Management::FileList::Weapon", parm0_x;
2151 STORE_F "::Data::Management::FileList::Game", parm0_x;
2154 STORE_F "::Data::Management::FileList::MapList", parm0_x;
2158 EQ_F pType, FILE_APPEND, temp_0;
2160 EQ_F pType, KEY_MENU, temp_0;
2167 entity (float) Nex_Management_GetContainer;
2168 entity(float pType) Nex_Management_GetContainer = asm
2172 STORE_F "::Data::Weapon", parm0_x;
2175 STORE_F "::Data::Game", parm0_x;
2178 STORE_F "::Data::Server::Map::Cycle", parm0_x;
2182 EQ_F pType, FILE_APPEND, temp_0;
2184 EQ_F pType, KEY_MENU, temp_0;
2191 float () Nex_Management_GetType;
2192 float() Nex_Management_GetType = asm
2194 local entity lTypeData;
2196 STORE_F "::Data::Management::ConfigType", parm0_x;
2198 STORE_ENT return_x, lTypeData;
2199 INDIRECT_S lTypeData, value, parm0_x;
2205 void (float) Nex_Management_SetType;
2206 void(float pType) Nex_Management_SetType = asm
2208 local entity lTypeData;
2212 STORE_F "::Data::Management::ConfigType", parm0_x;
2214 STORE_ENT return_x, lTypeData;
2215 STORE_F pType, parm0_x;
2217 STORE_F lTypeData, parm0_x;
2218 STORE_F value, parm1_x;
2219 STORE_F return_x, parm2_x;
2220 CALL3 String_EntitySet;
2221 STORE_F "FileList", parm0_x;
2223 STORE_ENT return_x, lItem;
2224 STORE_F pType, parm0_x;
2225 CALL1 Nex_Management_GetFileList;
2226 STORE_ENT return_x, lList;
2227 INDIRECT_S lList, name, temp_0;
2228 STORE_F lItem, parm0_x;
2229 STORE_F target, parm1_x;
2230 STORE_F temp_0, parm2_x;
2231 CALL3 String_EntitySet;
2235 void () Nex_Update_Management_SyncData;
2236 void() Nex_Update_Management_SyncData = asm
2240 INDIRECT_F self, _realValue, temp_0;
2241 LT temp_0, Timer_Time, temp_0;
2243 INDIRECT_F self, _realValue, temp_1;
2244 GT temp_1, KEY_GAME, temp_1;
2245 AND temp_0, temp_1, temp_0;
2247 CALL0 Nex_Management_GetType;
2248 STORE_F return_x, parm0_x;
2249 CALL1 Nex_Management_GetContainer;
2250 STORE_F return_x, parm0_x;
2251 STORE_F ITEM_DATA_SYNC, parm1_x;
2252 CALL2 Raise_DataEvent;
2253 ADDRESS self, _realValue, temp_0;
2254 STOREP_F KEY_GAME, temp_0;
2258 void () Nex_Action_Management_LoadConfig;
2259 void() Nex_Action_Management_LoadConfig = asm
2261 local entity lSyncItem;
2262 local entity lFilenameData;
2263 local entity lFileList;
2267 CALL0 Nex_Management_GetType;
2268 STORE_F return_x, parm0_x;
2269 CALL1 Nex_Management_GetFileList;
2270 STORE_ENT return_x, lFileList;
2271 STORE_F "::Data::Management::Filename", parm0_x;
2273 STORE_ENT return_x, lFilenameData;
2274 INDIRECT_S lFileList, selected, temp_1;
2275 INDIRECT_S lFilenameData, value, temp_2;
2276 INDIRECT_S lFileList, normal, temp_0;
2277 STORE_F "exec "", parm0_x;
2278 STORE_F temp_1, parm1_x;
2279 STORE_F "/", parm2_x;
2280 STORE_F temp_2, parm3_x;
2281 STORE_F ".", parm4_x;
2282 STORE_F temp_0, parm5_x;
2286 STORE_F return_x, parm0_x;
2288 STORE_F "::Data::Management::SyncCategory", parm0_x;
2290 STORE_ENT return_x, lSyncItem;
2291 ADDRESS lSyncItem, _realValue, temp_0;
2292 STOREP_F Timer_Time, temp_0;
2296 void () Nex_Action_Management_Load;
2297 void() Nex_Action_Management_Load = asm
2299 local string lQuestion;
2302 STORE_F "::Data::Management::Filename", parm0_x;
2304 STORE_ENT return_x, lItem;
2305 INDIRECT_S lItem, value, temp_0;
2306 EQ_S temp_0, "", temp_0;
2308 STORE_F "Loading", parm0_x;
2309 STORE_F "You must specify a filename!", parm1_x;
2310 STORE_F "Ok", parm2_x;
2311 STORE_F "", parm3_x;
2312 STORE_F Util_NullFunction, parm4_x;
2313 STORE_F Util_NullFunction, parm5_x;
2314 CALL6 Nex_MessageBox;
2316 INDIRECT_S lItem, value, temp_0;
2317 STORE_F "Do you want to load '", parm0_x;
2318 STORE_F temp_0, parm1_x;
2319 STORE_F "'?", parm2_x;
2321 STORE_F return_x, parm0_x;
2323 STORE_S return_x, lQuestion;
2324 STORE_F "Loading", parm0_x;
2325 STORE_F lQuestion, parm1_x;
2326 STORE_F "Yes", parm2_x;
2327 STORE_F "No", parm3_x;
2328 STORE_F Nex_Action_Management_LoadConfig, parm4_x;
2329 STORE_F Util_NullFunction, parm5_x;
2330 CALL6 Nex_MessageBox;
2331 STORE_F lQuestion, parm0_x;
2336 void () Nex_Action_Management_SaveConfig;
2337 void() Nex_Action_Management_SaveConfig = asm
2339 local float lHandle;
2340 local entity lContainer;
2341 local entity lFilename;
2342 local entity lFileList;
2347 CALL0 Nex_Management_GetType;
2348 STORE_F return_x, lType;
2349 STORE_F lType, parm0_x;
2350 CALL1 Nex_Management_GetFileList;
2351 STORE_ENT return_x, lFileList;
2352 STORE_F lType, parm0_x;
2353 CALL1 Nex_Management_GetContainer;
2354 STORE_ENT return_x, lContainer;
2355 STORE_F "::Data::Management::Filename", parm0_x;
2357 STORE_ENT return_x, lFilename;
2358 INDIRECT_S lFilename, value, temp_0;
2359 EQ_S temp_0, "", temp_0;
2361 STORE_F "Loading", parm0_x;
2362 STORE_F "You must specify a filename!", parm1_x;
2363 STORE_F "Ok", parm2_x;
2364 STORE_F "", parm3_x;
2365 STORE_F Util_NullFunction, parm4_x;
2366 STORE_F Util_NullFunction, parm5_x;
2367 CALL6 Nex_MessageBox;
2369 INDIRECT_S lFileList, selected, temp_0;
2370 INDIRECT_S lFilename, value, temp_1;
2371 INDIRECT_S lFileList, normal, temp_2;
2372 STORE_F temp_0, parm0_x;
2373 STORE_F "/", parm1_x;
2374 STORE_F temp_1, parm2_x;
2375 STORE_F ".", parm3_x;
2376 STORE_F temp_2, parm4_x;
2378 STORE_F return_x, parm0_x;
2379 STORE_F KEY_MENU, parm1_x;
2381 STORE_F return_x, lHandle;
2382 LT lHandle, KEY_GAME, temp_0;
2385 CALL0 Data_ExecString_BeginUse;
2386 STORE_F lContainer, parm0_x;
2387 STORE_F ITEM_DATA_SAVE_EXECSTRING, parm1_x;
2388 CALL2 Raise_DataEvent;
2389 STORE_F lHandle, parm0_x;
2390 STORE_F Data_ExecString, parm1_x;
2392 CALL0 Data_ExecString_EndUse;
2393 STORE_F lHandle, parm0_x;
2398 void () Nex_Action_Management_Save;
2399 void() Nex_Action_Management_Save = asm
2401 local string lQuestion;
2402 local float lHandle;
2403 local entity lFilename;
2404 local entity lFileList;
2408 CALL0 Nex_Management_GetType;
2409 STORE_F return_x, parm0_x;
2410 CALL1 Nex_Management_GetFileList;
2411 STORE_ENT return_x, lFileList;
2412 STORE_F "::Data::Management::Filename", parm0_x;
2414 STORE_ENT return_x, lFilename;
2415 INDIRECT_S lFileList, selected, temp_0;
2416 INDIRECT_S lFilename, value, temp_1;
2417 INDIRECT_S lFileList, normal, temp_2;
2418 STORE_F temp_0, parm0_x;
2419 STORE_F "/", parm1_x;
2420 STORE_F temp_1, parm2_x;
2421 STORE_F ".", parm3_x;
2422 STORE_F temp_2, parm4_x;
2424 STORE_F return_x, parm0_x;
2425 STORE_F KEY_GAME, parm1_x;
2427 STORE_F return_x, lHandle;
2428 EQ_F lHandle, ERR_CANNOTOPEN, temp_0;
2430 CALL0 Nex_Action_Management_SaveConfig;
2431 STORE_F lHandle, parm0_x;
2434 GT lHandle, KEY_GAME, temp_0;
2436 INDIRECT_S lFilename, value, temp_0;
2437 STORE_F "Do you want to overwrite '", parm0_x;
2438 STORE_F temp_0, parm1_x;
2439 STORE_F "'?", parm2_x;
2441 STORE_F return_x, parm0_x;
2443 STORE_S return_x, lQuestion;
2444 STORE_F "Saving", parm0_x;
2445 STORE_F lQuestion, parm1_x;
2446 STORE_F "Yes", parm2_x;
2447 STORE_F "No", parm3_x;
2448 STORE_F Nex_Action_Management_SaveConfig, parm4_x;
2449 STORE_F Util_NullFunction, parm5_x;
2450 CALL6 Nex_MessageBox;
2451 STORE_F lQuestion, parm0_x;
2456 void () Nex_Action_Management_Refresh;
2457 void() Nex_Action_Management_Refresh = asm
2460 STORE_F "::Data::Management::FileList", parm0_x;
2462 STORE_ENT return_x, lItem;
2463 STORE_F lItem, parm0_x;
2464 STORE_F ITEM_DATA_SYNC, parm1_x;
2465 CALL2 Raise_DataEvent;
2469 void () Nex_Action_Management_TypeWeapon;
2470 void() Nex_Action_Management_TypeWeapon = asm
2472 STORE_F KEY_GAME, parm0_x;
2473 CALL1 Nex_Management_SetType;
2477 void () Nex_Action_Management_TypeGame;
2478 void() Nex_Action_Management_TypeGame = asm
2480 STORE_F FILE_APPEND, parm0_x;
2481 CALL1 Nex_Management_SetType;
2485 void () Nex_Action_Management_TypeMapList;
2486 void() Nex_Action_Management_TypeMapList = asm
2488 STORE_F KEY_MENU, parm0_x;
2489 CALL1 Nex_Management_SetType;
2493 void () Nex_Automation_Key;
2494 void() Nex_Automation_Key = asm
2496 local entity lLink2;
2497 local entity lLink1;
2498 local entity lAction;
2501 INDIRECT_E self, _parent, temp_0;
2502 INDIRECT_S temp_0, target, temp_0;
2503 NOT_S temp_0, temp_0;
2505 INDIRECT_E self, _parent, temp_0;
2506 INDIRECT_S temp_0, target, temp_0;
2507 STORE_F "Bad target '", parm0_x;
2508 STORE_F temp_0, parm1_x;
2509 STORE_F "'", parm2_x;
2512 STORE_F "Action", parm0_x;
2514 STORE_ENT return_x, lAction;
2515 STORE_F "Link1", parm0_x;
2517 STORE_ENT return_x, lLink1;
2518 STORE_F "Link2", parm0_x;
2520 STORE_ENT return_x, lLink2;
2521 ADDRESS lAction, text, temp_0;
2522 INDIRECT_E self, _parent, temp_1;
2523 INDIRECT_S temp_1, text, temp_1;
2524 STOREP_S temp_1, temp_0;
2525 ADDRESS lLink1, link, temp_0;
2526 INDIRECT_E self, _parent, temp_1;
2527 INDIRECT_S temp_1, target, temp_1;
2528 STOREP_S temp_1, temp_0;
2529 ADDRESS lLink2, link, temp_0;
2530 INDIRECT_E self, _parent, temp_1;
2531 INDIRECT_S temp_1, target, temp_1;
2532 STOREP_S temp_1, temp_0;
2536 void (float, float) Nex_Key_KeyHook;
2537 void(float pKey, float pAscii) Nex_Key_KeyHook = asm
2542 NE_F pKey, K_ESCAPE, temp_0;
2544 STORE_F pKey, parm0_x;
2546 STORE_F Menu_KeyHook_Target, parm0_x;
2547 STORE_F value, parm1_x;
2548 STORE_F return_x, parm2_x;
2549 CALL3 String_EntitySet;
2550 STORE_F Menu_KeyHook_Target, parm0_x;
2551 STORE_F ITEM_DATALINK_SET, parm1_x;
2552 CALL2 Raise_DataEvent;
2553 STORE_F Menu_KeyHook_Target, parm0_x;
2554 STORE_F ITEM_DATA_TEST_START, parm1_x;
2555 CALL2 Raise_DataEvent;
2556 STORE_F Menu_KeyHook_Target, parm0_x;
2557 STORE_F "InfoWindow", parm1_x;
2558 STORE_F FILE_APPEND, parm2_x;
2559 CALL3 Menu_GetItemEx;
2560 STORE_ENT return_x, lItem;
2561 ADDRESS lItem, flag, temp_0;
2562 INDIRECT_F lItem, flag, temp_1;
2563 BITOR temp_1, FLAG_HIDDEN, temp_1;
2564 STOREP_F temp_1, temp_0;
2565 STORE_FNC Util_NullFunction, Menu_KeyHook;
2569 void () Nex_Action_KeyButton;
2570 void() Nex_Action_KeyButton = asm
2576 INDIRECT_E self, _target, temp_0;
2577 INDIRECT_E temp_0, _link, Menu_KeyHook_Target;
2578 STORE_FNC Nex_Key_KeyHook, Menu_KeyHook;
2579 STORE_F "InfoWindow", parm0_x;
2581 STORE_ENT return_x, lItem;
2582 ADDRESS lItem, flag, temp_0;
2583 INDIRECT_F lItem, flag, temp_1;
2584 INDIRECT_F lItem, flag, temp_2;
2585 BITAND temp_2, FLAG_HIDDEN, temp_2;
2586 SUB_F temp_1, temp_2, temp_1;
2587 STOREP_F temp_1, temp_0;
2591 void () Nex_Action_Video_Apply;
2592 void() Nex_Action_Video_Apply = asm
2594 STORE_F "::Data::Video::Fullscreen", parm0_x;
2596 STORE_F return_x, parm0_x;
2597 STORE_F ITEM_DATA_SEND, parm1_x;
2598 CALL2 Raise_DataEvent;
2599 STORE_F "::Data::Video::Resolution", parm0_x;
2601 STORE_F return_x, parm0_x;
2602 STORE_F ITEM_DATA_SEND, parm1_x;
2603 CALL2 Raise_DataEvent;
2604 STORE_F "::Data::Video::BPP", parm0_x;
2606 STORE_F return_x, parm0_x;
2607 STORE_F ITEM_DATA_SEND, parm1_x;
2608 CALL2 Raise_DataEvent;
2609 STORE_F "vid_restart
2615 void () Nex_Action_JoinGame_SortBy_Action;
2616 void() Nex_Action_JoinGame_SortBy_Action = asm
2620 INDIRECT_F self, _realValue, temp_0;
2621 EQ_F HostCache_SortField, temp_0, temp_0;
2623 INDIRECT_F self, _realValue, temp_0;
2624 NOT_F HostCache_SortDescending, temp_1;
2625 STORE_F temp_0, parm0_x;
2626 STORE_F temp_1, parm1_x;
2627 CALL2 sethostcachesort;
2629 INDIRECT_F self, _realValue, parm0_x;
2630 STORE_F FILE_APPEND, parm1_x;
2631 CALL2 sethostcachesort;
2632 CALL0 HostCache_ResortViewSet;
2636 void () Nex_Action_JoinGame_SortBy;
2637 void() Nex_Action_JoinGame_SortBy = asm
2639 local float locked_1174;
2641 ADDRESS self, _realValue, locked_1174;
2642 INDIRECT_S self, target, parm0_x;
2643 CALL1 gethostcacheindexforkey;
2644 STOREP_F return_x, locked_1174;
2645 ADDRESS self, action, locked_1174;
2646 STOREP_FNC Nex_Action_JoinGame_SortBy_Action, locked_1174;
2650 void () Nex_Automation_CreateEntries;
2651 void() Nex_Automation_CreateEntries = asm
2653 local entity lEntry;
2654 local float lCounter;
2655 local entity lTemplate;
2657 STORE_F "Entry", parm0_x;
2659 STORE_ENT return_x, lTemplate;
2660 STORE_F KEY_GAME, lCounter;
2661 LT lCounter, 64.000000, temp_0;
2663 STORE_F lCounter, parm0_x;
2665 STORE_F "Entry", parm0_x;
2666 STORE_F return_x, parm1_x;
2668 INDIRECT_S self, parent, temp_0;
2669 STORE_F lTemplate, parm0_x;
2670 STORE_F return_x, parm1_x;
2671 STORE_F temp_0, parm2_x;
2672 STORE_F FILE_APPEND, parm3_x;
2673 CALL4 Menu_DeriveItem;
2674 STORE_ENT return_x, lEntry;
2675 ADDRESS lEntry, stepValue, temp_0;
2676 STOREP_F lCounter, temp_0;
2677 ADD_F lCounter, FILE_APPEND, lCounter;
2679 INDIRECT_E self, _parent, parm0_x;
2680 CALL1 Menu_LinkItem;
2684 void () Nex_Action_EntryConnect;
2685 void() Nex_Action_EntryConnect = asm
2688 STORE_F "connect "", parm0_x;
2690 INDIRECT_F self, stepValue, temp_0;
2691 STORE_F SLIST_FIELD_CNAME, parm0_x;
2692 STORE_F temp_0, parm1_x;
2693 CALL2 gethostcachestring;
2694 STORE_F return_x, parm0_x;
2703 void () Nex_Action_RefreshSlist;
2704 void() Nex_Action_RefreshSlist = asm
2706 CALL0 HostCache_RefreshHostCache;
2710 void () Nex_Action_JumpToJoinGame;
2711 void() Nex_Action_JumpToJoinGame = asm
2715 CALL0 resethostcachemasks;
2716 STORE_F SLIST_FIELD_PING, parm0_x;
2717 STORE_F KEY_GAME, parm1_x;
2718 CALL2 sethostcachesort;
2719 CALL0 HostCache_RefreshHostCache;
2720 STORE_F "Normal::Panel", parm0_x;
2722 STORE_ENT return_x, lItem;
2723 STORE_F lItem, parm0_x;
2724 STORE_F link, parm1_x;
2725 STORE_F "JoinGame", parm2_x;
2726 CALL3 String_EntitySet;
2727 STORE_F lItem, parm0_x;
2729 CALL0 Menu_UpdateRunFlags;
2730 INDIRECT_E lItem, _link, parm0_x;
2731 STORE_F KEY_GAME, parm1_x;
2732 STORE_F KEY_GAME, parm2_x;
2733 CALL3 Menu_JumpToWindow;
2737 void () Nex_Action_ExecuteQuery;
2738 void() Nex_Action_ExecuteQuery = asm
2740 local bool lIsStringArg;
2741 local float lOperator;
2743 local bool lAndMask;
2744 local string lToken;
2745 local float lTokenCount;
2746 local float lTokenNum;
2748 local float lAndPos;
2751 CALL0 resethostcachemasks;
2752 STORE_F KEY_GAME, lAndPos;
2753 STORE_F K_MOUSE1, lOrPos;
2754 INDIRECT_E self, _target, temp_0;
2755 INDIRECT_S temp_0, value, parm0_x;
2757 STORE_F return_x, lTokenCount;
2758 STORE_F KEY_GAME, lTokenNum;
2759 LT lTokenNum, lTokenCount, temp_0;
2761 STORE_F lTokenNum, parm0_x;
2763 STORE_S return_x, lToken;
2764 EQ_S lToken, "notempty", temp_0;
2766 STORE_F lAndPos, parm0_x;
2767 STORE_F SLIST_FIELD_NUMPLAYERS, parm1_x;
2768 STORE_F KEY_GAME, parm2_x;
2769 STORE_F SLIST_SORTDESCENDING, parm3_x;
2770 CALL4 sethostcachemasknumber;
2771 ADD_F lAndPos, FILE_APPEND, lAndPos;
2773 EQ_S lToken, "compatible", temp_0;
2775 STORE_F lAndPos, parm0_x;
2776 STORE_F SLIST_FIELD_PROTOCOL, parm1_x;
2777 STORE_F KEY_UNKNOWN, parm2_x;
2778 STORE_F CVAR_READONLY, parm3_x;
2779 CALL4 sethostcachemasknumber;
2780 ADD_F lAndPos, FILE_APPEND, lAndPos;
2782 EQ_S lToken, "goodping", temp_0;
2784 STORE_F lAndPos, parm0_x;
2785 STORE_F SLIST_FIELD_PING, parm1_x;
2786 STORE_F K_PGUP, parm2_x;
2787 STORE_F KEY_MENU, parm3_x;
2788 CALL4 sethostcachemasknumber;
2789 ADD_F lAndPos, FILE_APPEND, lAndPos;
2791 EQ_S lToken, "mediumping", temp_0;
2793 STORE_F lAndPos, parm0_x;
2794 STORE_F SLIST_FIELD_PROTOCOL, parm1_x;
2795 STORE_F 250.000000, parm2_x;
2796 STORE_F KEY_MENU, parm3_x;
2797 CALL4 sethostcachemasknumber;
2798 ADD_F lAndPos, FILE_APPEND, lAndPos;
2800 EQ_S lToken, "mask", temp_0;
2802 ADD_F lTokenNum, FILE_APPEND, lTokenNum;
2803 GT lTokenNum, lTokenCount, temp_0;
2807 STORE_F lTokenNum, parm0_x;
2809 STORE_S return_x, lToken;
2810 EQ_S lToken, "or", temp_0;
2812 STORE_F KEY_GAME, lAndMask;
2814 EQ_S lToken, "and", temp_0;
2816 STORE_F FILE_APPEND, lAndMask;
2819 ADD_F lTokenNum, FILE_APPEND, lTokenNum;
2820 GT lTokenNum, lTokenCount, temp_0;
2824 STORE_F lTokenNum, parm0_x;
2826 STORE_S return_x, lToken;
2827 EQ_S lToken, "cname", temp_0;
2829 STORE_F SLIST_FIELD_CNAME, lField;
2830 STORE_F FILE_APPEND, lIsStringArg;
2832 EQ_S lToken, "ping", temp_0;
2834 STORE_F SLIST_FIELD_PING, lField;
2835 STORE_F KEY_GAME, lIsStringArg;
2837 EQ_S lToken, "game", temp_0;
2839 STORE_F SLIST_FIELD_GAME, lField;
2840 STORE_F FILE_APPEND, lIsStringArg;
2842 EQ_S lToken, "mod", temp_0;
2844 STORE_F SLIST_FIELD_MOD, lField;
2845 STORE_F FILE_APPEND, lIsStringArg;
2847 EQ_S lToken, "map", temp_0;
2849 STORE_F SLIST_FIELD_MAP, lField;
2850 STORE_F FILE_APPEND, lIsStringArg;
2852 EQ_S lToken, "name", temp_0;
2854 STORE_F SLIST_FIELD_NAME, lField;
2855 STORE_F FILE_APPEND, lIsStringArg;
2857 EQ_S lToken, "maxplayers", temp_0;
2859 STORE_F SLIST_FIELD_MAXPLAYERS, lField;
2860 STORE_F KEY_GAME, lIsStringArg;
2862 EQ_S lToken, "numplayers", temp_0;
2864 STORE_F SLIST_FIELD_NUMPLAYERS, lField;
2865 STORE_F KEY_GAME, lIsStringArg;
2867 EQ_S lToken, "protocol", temp_0;
2869 STORE_F SLIST_FIELD_PROTOCOL, lField;
2870 STORE_F KEY_GAME, lIsStringArg;
2873 ADD_F lAndPos, FILE_APPEND, lAndPos;
2875 ADD_F lOrPos, FILE_APPEND, lOrPos;
2877 ADD_F lTokenNum, FILE_APPEND, lTokenNum;
2878 GT lTokenNum, lTokenCount, temp_0;
2882 STORE_F lTokenNum, parm0_x;
2884 STORE_S return_x, lToken;
2885 EQ_S lToken, "$$", temp_0;
2887 STORE_F KEY_GAME, lOperator;
2889 EQ_S lToken, "!$", temp_0;
2891 STORE_F FILE_APPEND, lOperator;
2893 EQ_S lToken, "<", temp_0;
2895 STORE_F KEY_UNKNOWN, lOperator;
2897 EQ_S lToken, "<=", temp_0;
2899 STORE_F KEY_MENU, lOperator;
2901 EQ_S lToken, "==", temp_0;
2903 EQ_S lToken, "=", temp_1;
2904 OR temp_0, temp_1, temp_0;
2906 STORE_F CVAR_READONLY, lOperator;
2908 EQ_S lToken, ">", temp_0;
2910 STORE_F SLIST_SERVERREPLYCOUNT, lOperator;
2912 EQ_S lToken, ">=", temp_0;
2914 STORE_F SLIST_SORTFIELD, lOperator;
2916 EQ_S lToken, "!=", temp_0;
2918 STORE_F SLIST_SORTDESCENDING, lOperator;
2920 EQ_S lToken, ":", temp_0;
2922 IFNOT lIsStringArg, 3;
2923 STORE_F KEY_GAME, lOperator;
2925 STORE_F KEY_MENU, lOperator;
2928 ADD_F lTokenNum, FILE_APPEND, lTokenNum;
2929 GT lTokenNum, lTokenCount, temp_0;
2933 STORE_F lTokenNum, parm0_x;
2935 STORE_S return_x, lToken;
2936 IFNOT lIsStringArg, 14;
2938 STORE_F lAndPos, parm0_x;
2939 STORE_F lField, parm1_x;
2940 STORE_F lToken, parm2_x;
2941 STORE_F lOperator, parm3_x;
2942 CALL4 sethostcachemaskstring;
2944 STORE_F lOrPos, parm0_x;
2945 STORE_F lField, parm1_x;
2946 STORE_F lToken, parm2_x;
2947 STORE_F lOperator, parm3_x;
2948 CALL4 sethostcachemaskstring;
2951 STORE_F lToken, parm0_x;
2953 STORE_F lAndPos, parm0_x;
2954 STORE_F lField, parm1_x;
2955 STORE_F return_x, parm2_x;
2956 STORE_F lOperator, parm3_x;
2957 CALL4 sethostcachemasknumber;
2959 STORE_F lToken, parm0_x;
2961 STORE_F lOrPos, parm0_x;
2962 STORE_F lField, parm1_x;
2963 STORE_F return_x, parm2_x;
2964 STORE_F lOperator, parm3_x;
2965 CALL4 sethostcachemasknumber;
2969 STORE_F lOrPos, parm0_x;
2970 STORE_F SLIST_FIELD_MAP, parm1_x;
2971 STORE_F lToken, parm2_x;
2972 STORE_F KEY_GAME, parm3_x;
2973 CALL4 sethostcachemaskstring;
2974 ADD_F lOrPos, FILE_APPEND, lOrPos;
2975 STORE_F lOrPos, parm0_x;
2976 STORE_F SLIST_FIELD_NAME, parm1_x;
2977 STORE_F lToken, parm2_x;
2978 STORE_F KEY_GAME, parm3_x;
2979 CALL4 sethostcachemaskstring;
2980 ADD_F lOrPos, FILE_APPEND, lOrPos;
2981 ADD_F lTokenNum, FILE_APPEND, lTokenNum;
2983 CALL0 HostCache_ResortViewSet;
2987 void () Nex_Credits_SetSizeX;
2988 void() Nex_Credits_SetSizeX = asm
2993 STORE_F "Credits", parm0_x;
2995 STORE_ENT return_x, lItem;
2996 ADDRESS lItem, size_x, temp_0;
2997 INDIRECT_E self, _parent, temp_1;
2998 INDIRECT_F temp_1, size_x, temp_1;
2999 STOREP_F temp_1, temp_0;
3003 void () Nex_Credits_Scroll;
3004 void() Nex_Credits_Scroll = asm
3006 local entity lTarget;
3008 local vector temp_0;
3009 local vector temp_1;
3010 local vector temp_2;
3013 STORE_F "Credits", parm0_x;
3015 STORE_ENT return_x, lItem;
3016 INDIRECT_E self, _parent, lTarget;
3017 ADDRESS lTarget, origin_x, temp_2_x;
3018 INDIRECT_V lTarget, origin_x, temp_1;
3019 INDIRECT_V self, direction_x, temp_0;
3020 MUL_FV Timer_Delta, temp_0, temp_0;
3021 SUB_V temp_1, temp_0, temp_0;
3022 STOREP_V temp_0_x, temp_2;
3023 INDIRECT_F self, direction_x, temp_3;
3025 INDIRECT_F lTarget, origin_x, temp_3;
3026 INDIRECT_F lItem, size_x, temp_4;
3027 SUB_F KEY_GAME, temp_4, temp_4;
3028 LT temp_3, temp_4, temp_3;
3030 ADDRESS lTarget, origin_x, temp_3;
3031 INDIRECT_F lTarget, size_x, temp_4;
3032 STOREP_F temp_4, temp_3;
3033 INDIRECT_F lTarget, origin_x, temp_3;
3034 INDIRECT_F lItem, size_x, temp_4;
3035 GT temp_3, temp_4, temp_3;
3037 ADDRESS lTarget, origin_x, temp_3;
3038 INDIRECT_F lItem, size_x, temp_4;
3039 SUB_F KEY_GAME, temp_4, temp_4;
3040 STOREP_F temp_4, temp_3;
3041 INDIRECT_F self, direction_y, temp_3;
3043 INDIRECT_F lTarget, origin_y, temp_3;
3044 INDIRECT_F lItem, size_y, temp_4;
3045 SUB_F KEY_GAME, temp_4, temp_4;
3046 LT temp_3, temp_4, temp_3;
3048 ADDRESS lTarget, origin_y, temp_3;
3049 INDIRECT_F lTarget, size_y, temp_4;
3050 STOREP_F temp_4, temp_3;
3051 INDIRECT_F lTarget, origin_y, temp_3;
3052 INDIRECT_F lItem, size_y, temp_4;
3053 GT temp_3, temp_4, temp_3;
3055 ADDRESS lTarget, origin_y, temp_3;
3056 INDIRECT_F lItem, size_y, temp_4;
3057 SUB_F KEY_GAME, temp_4, temp_4;
3058 STOREP_F temp_4, temp_3;
3062 void () Nex_Credits_Toggle;
3063 void() Nex_Credits_Toggle = asm
3065 local entity lEntity;
3068 STORE_F "CreditsWnd", parm0_x;
3070 STORE_ENT return_x, lEntity;
3071 INDIRECT_F lEntity, flag, temp_3;
3072 BITAND temp_3, FLAG_HIDDEN, temp_3;
3074 ADDRESS lEntity, flag, temp_3;
3075 INDIRECT_F lEntity, flag, temp_4;
3076 SUB_F temp_4, FLAG_HIDDEN, temp_4;
3077 STOREP_F temp_4, temp_3;
3078 STORE_F "CreditsWnd::Layout::Items::Close", parm0_x;
3080 STORE_F return_x, parm0_x;
3081 STORE_F KEY_GAME, parm1_x;
3084 ADDRESS lEntity, flag, temp_3;
3085 INDIRECT_F lEntity, flag, temp_4;
3086 ADD_F temp_4, FLAG_HIDDEN, temp_4;
3087 STOREP_F temp_4, temp_3;
3088 STORE_F KEY_GAME, parm0_x;
3089 CALL1 Menu_Reselect;
3093 float (float, float) Nex_Credits_Key;
3094 float(float pKey, float pAscii) Nex_Credits_Key = asm
3097 EQ_F pKey, K_ESCAPE, temp_3;
3099 CALL0 Nex_Credits_Toggle;
3105 void () Nex_Credits_Action;
3106 void() Nex_Credits_Action = asm
3108 local entity lEntity;
3111 STORE_F "CreditsWnd", parm0_x;
3113 STORE_ENT return_x, lEntity;
3114 INDIRECT_F lEntity, flag, temp_3;
3115 BITAND temp_3, FLAG_HIDDEN, temp_3;
3117 ADDRESS lEntity, flag, temp_3;
3118 INDIRECT_F lEntity, flag, temp_4;
3119 SUB_F temp_4, FLAG_HIDDEN, temp_4;
3120 STOREP_F temp_4, temp_3;
3121 STORE_F "CreditsWnd::Layout::Items::Close", parm0_x;
3123 STORE_F return_x, parm0_x;
3124 STORE_F KEY_GAME, parm1_x;
3126 STORE_F "CreditsWnd::Layout::Items::Scroller", parm0_x;
3128 STORE_ENT return_x, lEntity;
3129 ADDRESS lEntity, origin_y, temp_3;
3130 INDIRECT_F lEntity, size_y, temp_4;
3131 STOREP_F temp_4, temp_3;
3135 void() Item_Nex_Avatar_Info_Destroy = asm
3137 STORE_F self, parm0_x;
3138 STORE_F target, parm1_x;
3139 CALL2 String_EntityFree;
3140 STORE_F self, parm0_x;
3141 STORE_F link, parm1_x;
3142 CALL2 String_EntityFree;
3143 STORE_F self, parm0_x;
3144 STORE_F picture, parm1_x;
3145 CALL2 String_EntityFree;
3146 STORE_F self, parm0_x;
3147 STORE_F text, parm1_x;
3148 CALL2 String_EntityFree;
3149 STORE_F self, parm0_x;
3150 STORE_F normal, parm1_x;
3151 CALL2 String_EntityFree;
3155 void() Item_Nex_Avatar_Info_Spawn = asm
3158 STORE_F self, parm0_x;
3159 STORE_F target, parm1_x;
3160 CALL2 String_EntityZone;
3161 STORE_F self, parm0_x;
3162 STORE_F link, parm1_x;
3163 CALL2 String_EntityZone;
3164 STORE_F self, parm0_x;
3165 STORE_F picture, parm1_x;
3166 CALL2 String_EntityZone;
3167 STORE_F self, parm0_x;
3168 STORE_F text, parm1_x;
3169 CALL2 String_EntityZone;
3170 STORE_F self, parm0_x;
3171 STORE_F normal, parm1_x;
3172 CALL2 String_EntityZone;
3173 INDIRECT_S self, picture, parm0_x;
3175 ADDRESS self, _destroy, temp_3;
3176 STOREP_FNC Item_Nex_Avatar_Info_Destroy, temp_3;
3180 void () _IDNA_BuildList;
3181 void() _IDNA_BuildList = asm
3183 local float locked_1174;
3185 local string lDescription;
3186 local string lModel;
3188 local string lPicture;
3190 local float lHandle;
3191 local string lFilename;
3192 local entity lAvatar;
3193 local float lSearchCounter;
3194 local float lSearchSize;
3195 local float lSearchHandle;
3197 STORE_F self, parm0_x;
3198 CALL1 Menu_EmptyWindow;
3199 STORE_F "models/player/*.txt", parm0_x;
3200 STORE_F FILE_APPEND, parm1_x;
3201 STORE_F FILE_APPEND, parm2_x;
3203 STORE_F return_x, lSearchHandle;
3204 LT lSearchHandle, KEY_GAME, locked_1174;
3205 IFNOT locked_1174, 2;
3207 STORE_F lSearchHandle, parm0_x;
3208 CALL1 search_getsize;
3209 STORE_F return_x, lSearchSize;
3210 STORE_F KEY_GAME, lSearchCounter;
3211 LT lSearchCounter, lSearchSize, locked_1174;
3212 IFNOT locked_1174, 116;
3213 STORE_F lSearchHandle, parm0_x;
3214 STORE_F lSearchCounter, parm1_x;
3215 CALL2 search_getfilename;
3216 STORE_S return_x, lFilename;
3217 STORE_F lFilename, parm0_x;
3218 STORE_F KEY_GAME, parm1_x;
3220 STORE_F return_x, lHandle;
3221 LT lHandle, KEY_GAME, locked_1174;
3222 IFNOT locked_1174, 6;
3223 STORE_F "Menu: Couldn't open model definition file '", parm0_x;
3224 STORE_F lFilename, parm1_x;
3229 STORE_F lHandle, parm0_x;
3231 STORE_F return_x, parm0_x;
3233 STORE_S return_x, lName;
3234 STORE_F lHandle, parm0_x;
3236 STORE_F return_x, parm0_x;
3238 STORE_S return_x, lPicture;
3239 STORE_F lHandle, parm0_x;
3241 STORE_F return_x, parm0_x;
3243 STORE_S return_x, lSkin;
3244 STORE_F lHandle, parm0_x;
3246 STORE_F return_x, parm0_x;
3248 STORE_S return_x, lModel;
3249 NOT_S lName, locked_1174;
3251 NOT_S lPicture, temp_4;
3252 OR locked_1174, temp_4, locked_1174;
3254 NOT_S lSkin, temp_4;
3255 OR locked_1174, temp_4, locked_1174;
3257 NOT_S lModel, temp_4;
3258 OR locked_1174, temp_4, locked_1174;
3259 IFNOT locked_1174, 19;
3260 STORE_F lName, parm0_x;
3262 STORE_F lPicture, parm0_x;
3264 STORE_F lSkin, parm0_x;
3266 STORE_F lModel, parm0_x;
3268 STORE_F lSearchHandle, parm0_x;
3269 STORE_F lSearchCounter, parm1_x;
3270 CALL2 search_getfilename;
3271 STORE_F "Menu: Couldn't parse model definition file '", parm0_x;
3272 STORE_F return_x, parm1_x;
3276 STORE_F lHandle, parm0_x;
3279 CALL0 String_Create;
3280 STORE_S return_x, lDescription;
3281 STORE_F lHandle, parm0_x;
3283 STORE_S return_x, lLine;
3284 STORE_F lLine, parm0_x;
3288 STORE_F lDescription, parm0_x;
3289 STORE_F return_x, parm1_x;
3290 CALL2 String_Append;
3291 STORE_S return_x, lDescription;
3292 STORE_F lLine, parm0_x;
3295 NE_S lDescription, string_null, locked_1174;
3296 IFNOT locked_1174, 21;
3297 STORE_F lSearchCounter, parm0_x;
3299 INDIRECT_S self, name, locked_1174;
3300 STORE_F "Item_Nex_Avatar_Info", parm0_x;
3301 STORE_F return_x, parm1_x;
3302 STORE_F locked_1174, parm2_x;
3303 CALL3 Menu_CreateItem;
3304 STORE_ENT return_x, lAvatar;
3305 ADDRESS lAvatar, target, locked_1174;
3306 STOREP_S lModel, locked_1174;
3307 ADDRESS lAvatar, link, locked_1174;
3308 STOREP_S lSkin, locked_1174;
3309 ADDRESS lAvatar, picture, locked_1174;
3310 STOREP_S lPicture, locked_1174;
3311 ADDRESS lAvatar, normal, locked_1174;
3312 STOREP_S lName, locked_1174;
3313 ADDRESS lAvatar, text, locked_1174;
3314 STOREP_S lDescription, locked_1174;
3315 STORE_F lAvatar, parm0_x;
3316 CALL1 Menu_LinkItem;
3317 STORE_F lName, parm0_x;
3319 STORE_F lPicture, parm0_x;
3321 STORE_F lSkin, parm0_x;
3323 STORE_F lModel, parm0_x;
3325 STORE_F lDescription, parm0_x;
3327 STORE_F lHandle, parm0_x;
3329 ADD_F lSearchCounter, FILE_APPEND, lSearchCounter;
3331 STORE_F lSearchHandle, parm0_x;
3333 STORE_F self, parm0_x;
3334 CALL1 Menu_LinkChildren;
3335 ADDRESS self, minValue, locked_1174;
3336 STOREP_F FILE_APPEND, locked_1174;
3337 ADDRESS self, stepValue, locked_1174;
3338 STOREP_F FILE_APPEND, locked_1174;
3339 ADDRESS self, maxValue, locked_1174;
3340 INDIRECT_F lAvatar, orderPos, parm0_x;
3342 STOREP_F return_x, locked_1174;
3347 void() _IDNA_Sync = asm
3349 local float locked_1174;
3350 local entity lMatch;
3352 local string lModel;
3354 STORE_F "_cl_playermodel", parm0_x;
3356 STORE_F return_x, parm0_x;
3358 STORE_S return_x, lModel;
3359 STORE_F "_cl_playerskin", parm0_x;
3361 STORE_F return_x, parm0_x;
3363 STORE_S return_x, lSkin;
3364 INDIRECT_E self, _child, lMatch;
3365 INDIRECT_E lMatch, _next, locked_1174;
3366 IFNOT locked_1174, 11;
3367 INDIRECT_S lMatch, target, locked_1174;
3368 EQ_S locked_1174, lModel, locked_1174;
3369 IFNOT locked_1174, 3;
3370 INDIRECT_S lMatch, link, temp_4;
3371 EQ_S temp_4, lSkin, temp_4;
3372 AND locked_1174, temp_4, locked_1174;
3373 IFNOT locked_1174, 2;
3375 INDIRECT_E lMatch, _next, lMatch;
3378 ADDRESS self, _link, locked_1174;
3379 STOREP_ENT lMatch, locked_1174;
3380 ADDRESS self, _realValue, locked_1174;
3381 INDIRECT_F lMatch, orderPos, parm0_x;
3383 STOREP_F return_x, locked_1174;
3384 INDIRECT_F self, _realValue, parm0_x;
3386 STORE_F self, parm0_x;
3387 STORE_F value, parm1_x;
3388 STORE_F return_x, parm2_x;
3389 CALL3 String_EntitySet;
3390 INDIRECT_S self, value, locked_1174;
3391 STORE_F self, parm0_x;
3392 STORE_F _syncValue, parm1_x;
3393 STORE_F locked_1174, parm2_x;
3394 CALL3 String_EntitySet;
3395 STORE_F lModel, parm0_x;
3397 STORE_F lSkin, parm0_x;
3402 void () _IDNA_UpdateLink;
3403 void() _IDNA_UpdateLink = asm
3405 local float locked_1174;
3406 local entity lMatch;
3407 local float lTarget;
3408 local float lCurrent;
3410 INDIRECT_E self, _link, locked_1174;
3411 INDIRECT_F locked_1174, orderPos, parm0_x;
3413 STORE_F return_x, lCurrent;
3414 INDIRECT_F self, _realValue, lTarget;
3415 LT lCurrent, lTarget, locked_1174;
3416 IFNOT locked_1174, 12;
3417 INDIRECT_E self, _link, lMatch;
3418 INDIRECT_E lMatch, _next, locked_1174;
3419 IFNOT locked_1174, 4;
3420 INDIRECT_F lMatch, orderPos, parm0_x;
3422 NE_F return_x, lTarget, temp_4;
3423 AND locked_1174, temp_4, locked_1174;
3424 IFNOT locked_1174, 3;
3425 INDIRECT_E lMatch, _next, lMatch;
3428 INDIRECT_E self, _link, lMatch;
3429 INDIRECT_E lMatch, _prev, locked_1174;
3430 IFNOT locked_1174, 4;
3431 INDIRECT_F lMatch, orderPos, parm0_x;
3433 NE_F return_x, lTarget, temp_4;
3434 AND locked_1174, temp_4, locked_1174;
3435 IFNOT locked_1174, 3;
3436 INDIRECT_E lMatch, _prev, lMatch;
3438 ADDRESS self, _link, locked_1174;
3439 STOREP_ENT lMatch, locked_1174;
3440 ADDRESS self, _realValue, locked_1174;
3441 INDIRECT_E self, _link, temp_4;
3442 INDIRECT_F temp_4, orderPos, parm0_x;
3444 STOREP_F return_x, locked_1174;
3445 INDIRECT_F self, _realValue, parm0_x;
3447 STORE_F self, parm0_x;
3448 STORE_F value, parm1_x;
3449 STORE_F return_x, parm2_x;
3450 CALL3 String_EntitySet;
3454 void () _IDNA_RawSet;
3455 void() _IDNA_RawSet = asm
3458 CALL0 _IDNA_UpdateLink;
3459 INDIRECT_E self, _link, temp_3;
3460 INDIRECT_S temp_3, target, temp_3;
3461 STORE_F "playermodel "", parm0_x;
3462 STORE_F temp_3, parm1_x;
3463 STORE_F "";", parm2_x;
3465 STORE_F return_x, parm0_x;
3467 INDIRECT_E self, _link, temp_3;
3468 INDIRECT_S temp_3, link, temp_3;
3469 STORE_F "playerskin "", parm0_x;
3470 STORE_F temp_3, parm1_x;
3474 STORE_F return_x, parm0_x;
3480 void() _IDNA_Send = asm
3484 INDIRECT_S self, value, temp_3;
3485 STORE_F self, parm0_x;
3486 STORE_F _syncValue, parm1_x;
3487 STORE_F temp_3, parm2_x;
3488 CALL3 String_EntitySet;
3492 void () _IDNA_Test_Start;
3493 void() _IDNA_Test_Start = asm
3499 void () _IDNA_Test_End;
3500 void() _IDNA_Test_End = asm
3503 INDIRECT_S self, _syncValue, temp_3;
3504 STORE_F self, parm0_x;
3505 STORE_F value, parm1_x;
3506 STORE_F temp_3, parm2_x;
3507 CALL3 String_EntitySet;
3512 void () _IDNA_Reset;
3513 void() _IDNA_Reset = asm
3516 INDIRECT_S self, defValue, temp_3;
3517 STORE_F self, parm0_x;
3518 STORE_F value, parm1_x;
3519 STORE_F temp_3, parm2_x;
3520 CALL3 String_EntitySet;
3525 void(float pEvent) Item_Data_Nex_Avatar_DataEvent = asm
3535 CALL0 _IDNA_Test_Start;
3537 CALL0 _IDNA_Test_End;
3539 CALL0 _IDNA_UpdateLink;
3542 EQ_F pEvent, ITEM_DATA_SEND, temp_3;
3544 EQ_F pEvent, ITEM_DATA_RESET, temp_3;
3546 EQ_F pEvent, ITEM_DATA_TEST_START, temp_3;
3548 EQ_F pEvent, ITEM_DATA_TEST_END, temp_3;
3550 EQ_F pEvent, ITEM_DATALINK_SET, temp_3;
3555 void() Item_Data_Nex_Avatar_Spawn = asm
3559 CALL0 Item_Data_Init;
3560 ADDRESS self, flag, temp_3;
3561 INDIRECT_F self, flag, temp_4;
3562 BITOR temp_4, FLAG_HIDDEN, temp_4;
3563 STOREP_F temp_4, temp_3;
3564 ADDRESS self, _reinit, temp_3;
3565 STOREP_FNC _IDNA_Sync, temp_3;
3566 ADDRESS self, _dataEvent, temp_3;
3567 STOREP_FNC Item_Data_Nex_Avatar_DataEvent, temp_3;
3568 CALL0 _IDNA_BuildList;
3573 void() _IDNN_Sync = asm
3576 STORE_F "_cl_name", parm0_x;
3578 STORE_F self, parm0_x;
3579 STORE_F value, parm1_x;
3580 STORE_F return_x, parm2_x;
3581 CALL3 String_EntitySet;
3582 INDIRECT_S self, value, temp_3;
3583 STORE_F self, parm0_x;
3584 STORE_F _syncValue, parm1_x;
3585 STORE_F temp_3, parm2_x;
3586 CALL3 String_EntitySet;
3591 void() _IDNN_Send = asm
3594 INDIRECT_S self, value, temp_3;
3595 STORE_F "name "", parm0_x;
3596 STORE_F temp_3, parm1_x;
3600 STORE_F return_x, parm0_x;
3602 INDIRECT_S self, value, temp_3;
3603 STORE_F self, parm0_x;
3604 STORE_F _syncValue, parm1_x;
3605 STORE_F temp_3, parm2_x;
3606 CALL3 String_EntitySet;
3610 void () _IDNN_Test_Start;
3611 void() _IDNN_Test_Start = asm
3614 INDIRECT_S self, value, temp_3;
3615 STORE_F "name "", parm0_x;
3616 STORE_F temp_3, parm1_x;
3620 STORE_F return_x, parm0_x;
3625 void () _IDNN_Test_End;
3626 void() _IDNN_Test_End = asm
3629 INDIRECT_S self, _syncValue, temp_3;
3630 STORE_F self, parm0_x;
3631 STORE_F value, parm1_x;
3632 STORE_F temp_3, parm2_x;
3633 CALL3 String_EntitySet;
3634 INDIRECT_S self, value, temp_3;
3635 STORE_F "name "", parm0_x;
3636 STORE_F temp_3, parm1_x;
3640 STORE_F return_x, parm0_x;
3645 void () _IDNN_Reset;
3646 void() _IDNN_Reset = asm
3649 INDIRECT_S self, defValue, temp_3;
3650 STORE_F self, parm0_x;
3651 STORE_F value, parm1_x;
3652 STORE_F temp_3, parm2_x;
3653 CALL3 String_EntitySet;
3658 void(float pEvent) Item_Data_Nex_Name_DataEvent = asm
3668 CALL0 _IDNN_Test_Start;
3670 CALL0 _IDNN_Test_End;
3673 EQ_F pEvent, ITEM_DATA_SEND, temp_3;
3675 EQ_F pEvent, ITEM_DATA_RESET, temp_3;
3677 EQ_F pEvent, ITEM_DATA_TEST_START, temp_3;
3679 EQ_F pEvent, ITEM_DATA_TEST_END, temp_3;
3684 void() Item_Data_Nex_Name_Spawn = asm
3687 CALL0 Item_Data_Init;
3688 ADDRESS self, _reinit, temp_3;
3689 STOREP_FNC _IDNN_Sync, temp_3;
3690 ADDRESS self, _dataEvent, temp_3;
3691 STOREP_FNC Item_Data_Nex_Name_DataEvent, temp_3;
3696 void() _IDNC_Sync = asm
3700 STORE_F "_cl_color", parm0_x;
3702 BITAND return_x, 15.000000, lPants;
3703 STORE_F lPants, parm0_x;
3705 STORE_F self, parm0_x;
3706 STORE_F value, parm1_x;
3707 STORE_F return_x, parm2_x;
3708 CALL3 String_EntitySet;
3709 INDIRECT_S self, value, temp_3;
3710 STORE_F self, parm0_x;
3711 STORE_F _syncValue, parm1_x;
3712 STORE_F temp_3, parm2_x;
3713 CALL3 String_EntitySet;
3718 void() _IDNC_Send = asm
3721 INDIRECT_S self, value, temp_3;
3722 STORE_F "color "", parm0_x;
3723 STORE_F temp_3, parm1_x;
3727 STORE_F return_x, parm0_x;
3729 INDIRECT_S self, value, temp_3;
3730 STORE_F self, parm0_x;
3731 STORE_F _syncValue, parm1_x;
3732 STORE_F temp_3, parm2_x;
3733 CALL3 String_EntitySet;
3737 void () _IDNC_Test_Start;
3738 void() _IDNC_Test_Start = asm
3741 INDIRECT_S self, value, temp_3;
3742 STORE_F "color "", parm0_x;
3743 STORE_F temp_3, parm1_x;
3747 STORE_F return_x, parm0_x;
3752 void () _IDNC_Test_End;
3753 void() _IDNC_Test_End = asm
3756 INDIRECT_S self, _syncValue, temp_3;
3757 STORE_F self, parm0_x;
3758 STORE_F value, parm1_x;
3759 STORE_F temp_3, parm2_x;
3760 CALL3 String_EntitySet;
3761 INDIRECT_S self, value, temp_3;
3762 STORE_F "color "", parm0_x;
3763 STORE_F temp_3, parm1_x;
3767 STORE_F return_x, parm0_x;
3772 void () _IDNC_Reset;
3773 void() _IDNC_Reset = asm
3776 INDIRECT_S self, defValue, temp_3;
3777 STORE_F self, parm0_x;
3778 STORE_F value, parm1_x;
3779 STORE_F temp_3, parm2_x;
3780 CALL3 String_EntitySet;
3785 void(float pEvent) Item_Data_Nex_Color_DataEvent = asm
3795 CALL0 _IDNC_Test_Start;
3797 CALL0 _IDNC_Test_End;
3800 EQ_F pEvent, ITEM_DATA_SEND, temp_3;
3802 EQ_F pEvent, ITEM_DATA_RESET, temp_3;
3804 EQ_F pEvent, ITEM_DATA_TEST_START, temp_3;
3806 EQ_F pEvent, ITEM_DATA_TEST_END, temp_3;
3811 void() Item_Data_Nex_Color_Spawn = asm
3814 CALL0 Item_Data_Init;
3815 ADDRESS self, _reinit, temp_3;
3816 STOREP_FNC _IDNC_Sync, temp_3;
3817 ADDRESS self, _dataEvent, temp_3;
3818 STOREP_FNC Item_Data_Nex_Color_DataEvent, temp_3;
3822 void() Item_Nex_Map_Info_Destroy = asm
3824 STORE_F self, parm0_x;
3825 STORE_F link, parm1_x;
3826 CALL2 String_EntityFree;
3827 STORE_F self, parm0_x;
3828 STORE_F picture, parm1_x;
3829 CALL2 String_EntityFree;
3830 STORE_F self, parm0_x;
3831 STORE_F text, parm1_x;
3832 CALL2 String_EntityFree;
3833 STORE_F self, parm0_x;
3834 STORE_F normal, parm1_x;
3835 CALL2 String_EntityFree;
3839 void() Item_Nex_Map_Info_Spawn = asm
3842 STORE_F self, parm0_x;
3843 STORE_F link, parm1_x;
3844 CALL2 String_EntityZone;
3845 STORE_F self, parm0_x;
3846 STORE_F picture, parm1_x;
3847 CALL2 String_EntityZone;
3848 STORE_F self, parm0_x;
3849 STORE_F text, parm1_x;
3850 CALL2 String_EntityZone;
3851 STORE_F self, parm0_x;
3852 STORE_F normal, parm1_x;
3853 CALL2 String_EntityZone;
3854 INDIRECT_S self, picture, parm0_x;
3856 ADDRESS self, _destroy, temp_3;
3857 STOREP_FNC Item_Nex_Map_Info_Destroy, temp_3;
3861 string _Nex_MapList_FullPath;
3862 string _Nex_MapList_Name;
3863 entity _Nex_MapList_Root;
3864 void() Item_Nex_MapDB_EnumFiles = asm
3866 local float locked_1174;
3868 local string lTitle;
3869 local string lDescription;
3871 local string lStripped;
3872 local string lFilename;
3873 local float lHandle;
3875 local float lSearchCounter;
3876 local float lSearchSize;
3877 local float lSearchHandle;
3879 STORE_F "maps/*.bsp", parm0_x;
3880 STORE_F FILE_APPEND, parm1_x;
3881 STORE_F FILE_APPEND, parm2_x;
3883 STORE_F return_x, lSearchHandle;
3884 LT lSearchHandle, KEY_GAME, locked_1174;
3885 IFNOT locked_1174, 2;
3887 STORE_F lSearchHandle, parm0_x;
3888 CALL1 search_getsize;
3889 STORE_F return_x, lSearchSize;
3890 STORE_F KEY_GAME, lSearchCounter;
3891 LT lSearchCounter, lSearchSize, locked_1174;
3892 IFNOT locked_1174, 105;
3893 STORE_F lSearchHandle, parm0_x;
3894 STORE_F lSearchCounter, parm1_x;
3895 CALL2 search_getfilename;
3896 STORE_S return_x, lFilename;
3897 STORE_F lFilename, parm0_x;
3899 SUB_F return_x, CVAR_READONLY, locked_1174;
3900 STORE_F lFilename, parm0_x;
3901 STORE_F KEY_GAME, parm1_x;
3902 STORE_F locked_1174, parm2_x;
3904 STORE_F return_x, parm0_x;
3906 STORE_S return_x, lStripped;
3907 STORE_F lStripped, parm0_x;
3908 STORE_F SLIST_SERVERREPLYCOUNT, parm1_x;
3909 STORE_F 100000.000000, parm2_x;
3911 STORE_F return_x, parm0_x;
3913 STORE_S return_x, lName;
3914 STORE_F lStripped, parm0_x;
3915 STORE_F ".txt", parm1_x;
3917 STORE_F return_x, parm0_x;
3918 STORE_F KEY_GAME, parm1_x;
3920 STORE_F return_x, lHandle;
3921 LT lHandle, KEY_GAME, locked_1174;
3922 IFNOT locked_1174, 11;
3923 STORE_F lName, parm0_x;
3925 STORE_S return_x, lTitle;
3926 STORE_F "--NO INFORMATION AVAILABLE--
3928 STORE_F lFilename, parm1_x;
3930 STORE_F return_x, parm0_x;
3932 STORE_S return_x, lDescription;
3934 STORE_F lHandle, parm0_x;
3936 STORE_F return_x, parm0_x;
3938 STORE_S return_x, lTitle;
3939 CALL0 String_Create;
3940 STORE_S return_x, lDescription;
3941 STORE_F lHandle, parm0_x;
3943 STORE_S return_x, lLine;
3944 STORE_F lLine, parm0_x;
3948 STORE_F lDescription, parm0_x;
3949 STORE_F return_x, parm1_x;
3950 CALL2 String_Append;
3951 STORE_S return_x, lDescription;
3952 STORE_F lLine, parm0_x;
3955 STORE_F lHandle, parm0_x;
3957 STORE_F lSearchCounter, parm0_x;
3959 INDIRECT_S self, name, locked_1174;
3960 STORE_F "Item_Nex_Map_Info", parm0_x;
3961 STORE_F return_x, parm1_x;
3962 STORE_F locked_1174, parm2_x;
3963 CALL3 Menu_CreateItem;
3964 STORE_ENT return_x, lMap;
3965 ADDRESS lMap, link, locked_1174;
3966 STOREP_S lName, locked_1174;
3967 STORE_F lStripped, parm0_x;
3970 ADDRESS lMap, picture, locked_1174;
3971 STOREP_S lStripped, locked_1174;
3973 ADDRESS lMap, picture, locked_1174;
3974 STOREP_S "gfx/m_nomap", locked_1174;
3975 ADDRESS lMap, normal, locked_1174;
3976 STOREP_S lTitle, locked_1174;
3977 ADDRESS lMap, text, locked_1174;
3978 STOREP_S lDescription, locked_1174;
3979 STORE_F _Nex_MapList_FullPath, parm0_x;
3980 STORE_F lName, parm1_x;
3981 CALL2 Util_AltStringPushBack;
3982 STORE_S return_x, _Nex_MapList_FullPath;
3983 STORE_F _Nex_MapList_Name, parm0_x;
3984 STORE_F lTitle, parm1_x;
3985 CALL2 Util_AltStringPushBack;
3986 STORE_S return_x, _Nex_MapList_Name;
3987 STORE_F lMap, parm0_x;
3988 CALL1 Menu_LinkItem;
3989 STORE_F lTitle, parm0_x;
3991 STORE_F lName, parm0_x;
3993 STORE_F lStripped, parm0_x;
3995 STORE_F lDescription, parm0_x;
3997 ADD_F lSearchCounter, FILE_APPEND, lSearchCounter;
3999 STORE_F lSearchHandle, parm0_x;
4001 STORE_F self, parm0_x;
4002 CALL1 Menu_LinkChildren;
4003 ADDRESS self, minValue, locked_1174;
4004 STOREP_F FILE_APPEND, locked_1174;
4005 ADDRESS self, stepValue, locked_1174;
4006 STOREP_F FILE_APPEND, locked_1174;
4007 ADDRESS self, maxValue, locked_1174;
4008 INDIRECT_F lMap, orderPos, parm0_x;
4010 STOREP_F return_x, locked_1174;
4014 void() Item_Nex_MapDB_Destroy = asm
4016 STORE_F _Nex_MapList_FullPath, parm0_x;
4018 STORE_F _Nex_MapList_Name, parm0_x;
4020 STORE_ENT null_entity, _Nex_MapList_Root;
4024 void() Item_Nex_MapDB_Spawn = asm
4027 IFNOT _Nex_MapList_Root, 3;
4028 STORE_F "There is already another Item_Nex_MapDB object!", parm0_x;
4030 CALL0 String_Create;
4031 STORE_S return_x, _Nex_MapList_FullPath;
4032 CALL0 String_Create;
4033 STORE_S return_x, _Nex_MapList_Name;
4034 STORE_ENT self, _Nex_MapList_Root;
4035 CALL0 Item_Nex_MapDB_EnumFiles;
4036 ADDRESS self, _destroy, temp_3;
4037 STOREP_FNC Item_Nex_MapDB_Destroy, temp_3;
4041 entity(string pPath) Nex_MapDB_GetByPath = asm
4045 IF _Nex_MapList_Root, 3;
4046 STORE_F "No Item_Nex_MapDB found!", parm0_x;
4048 INDIRECT_E _Nex_MapList_Root, _child, lNode;
4050 INDIRECT_S lNode, link, temp_3;
4051 EQ_S temp_3, pPath, temp_3;
4054 INDIRECT_E lNode, _next, lNode;
4060 entity(float pIndex) Nex_MapDB_GetByIndex = asm
4064 IF _Nex_MapList_Root, 3;
4065 STORE_F "No Item_Nex_MapDB found!", parm0_x;
4067 STORE_F pIndex, parm0_x;
4069 STORE_F return_x, pIndex;
4070 INDIRECT_E _Nex_MapList_Root, _child, lNode;
4072 INDIRECT_F lNode, orderPos, parm0_x;
4074 EQ_F return_x, pIndex, temp_3;
4077 INDIRECT_E lNode, _next, lNode;
4083 string() Nex_MapDB_GetPathAltString = asm
4085 RETURN _Nex_MapList_FullPath;
4089 string() Nex_MapDB_GetNameAltString = asm
4091 RETURN _Nex_MapList_Name;
4095 float(entity pItem) Nex_MapDB_GetIndex = asm
4098 INDIRECT_F pItem, orderPos, parm0_x;
4104 void () Item_DataLink_Nex_MapList_Save;
4105 void() Item_DataLink_Nex_MapList_Save = asm
4107 local string lOutput;
4115 STORE_S return_x, lOutput;
4116 INDIRECT_S self, valueList, parm0_x;
4117 CALL1 Util_GetAltStringCount;
4118 STORE_F return_x, lCount;
4119 STORE_F KEY_GAME, lIndex;
4120 LT lIndex, lCount, temp_3;
4122 INDIRECT_S self, valueList, parm0_x;
4123 STORE_F lIndex, parm1_x;
4124 CALL2 Util_GetAltStringItem;
4125 STORE_F return_x, parm0_x;
4126 CALL1 String_Normal;
4127 STORE_F "'", parm0_x;
4128 STORE_F return_x, parm1_x;
4132 STORE_F lOutput, parm0_x;
4133 STORE_F return_x, parm1_x;
4134 CALL2 String_Append;
4135 STORE_S return_x, lOutput;
4136 STORE_F lIndex, temp_4;
4137 ADD_F lIndex, FILE_APPEND, lIndex;
4139 INDIRECT_S self, cvarName, parm0_x;
4140 STORE_F lOutput, parm1_x;
4142 INDIRECT_S self, cvarName, parm0_x;
4143 STORE_F "_index", parm1_x;
4145 STORE_F return_x, parm0_x;
4146 STORE_F "0", parm1_x;
4148 STORE_F lOutput, parm0_x;
4153 void () Item_DataLink_Nex_MapList_Load;
4154 void() Item_DataLink_Nex_MapList_Load = asm
4156 local float locked_1174;
4158 local float lCounter;
4159 local entity lMapInfo;
4160 local string lEntry;
4163 STORE_F self, parm0_x;
4164 CALL1 DataLink_Nex_MapList_Clear;
4165 INDIRECT_S self, cvarName, parm0_x;
4167 STORE_F return_x, parm0_x;
4169 STORE_F return_x, lCount;
4170 CALL0 String_Create;
4171 STORE_S return_x, lEntry;
4172 STORE_F KEY_GAME, lCounter;
4173 LT lCounter, lCount, locked_1174;
4174 IFNOT locked_1174, 35;
4175 STORE_F lCounter, parm0_x;
4177 STORE_F lEntry, parm0_x;
4178 STORE_F return_x, parm1_x;
4180 STORE_S return_x, lEntry;
4181 STORE_F lEntry, parm0_x;
4182 CALL1 Nex_MapDB_GetByPath;
4183 STORE_ENT return_x, lMapInfo;
4184 EQ_E lMapInfo, null_entity, locked_1174;
4185 IFNOT locked_1174, 7;
4186 INDIRECT_S self, cvarName, parm0_x;
4187 STORE_F ": Map '", parm1_x;
4188 STORE_F lEntry, parm2_x;
4189 STORE_F "' not found in database - ignored
4193 ADDRESS self, descList, locked_1174;
4194 INDIRECT_S self, descList, temp_4;
4195 INDIRECT_S lMapInfo, normal, temp_5;
4196 STORE_F temp_4, parm0_x;
4197 STORE_F temp_5, parm1_x;
4198 CALL2 Util_AltStringPushBack;
4199 STOREP_S return_x, locked_1174;
4200 ADDRESS self, valueList, locked_1174;
4201 INDIRECT_S self, valueList, temp_4;
4202 INDIRECT_S lMapInfo, link, temp_5;
4203 STORE_F temp_4, parm0_x;
4204 STORE_F temp_5, parm1_x;
4205 CALL2 Util_AltStringPushBack;
4206 STOREP_S return_x, locked_1174;
4207 STORE_F lCounter, temp_4;
4208 ADD_F lCounter, FILE_APPEND, lCounter;
4210 STORE_F lEntry, parm0_x;
4212 STORE_F self, parm0_x;
4213 CALL1 DataLink_Nex_MapList_UpdateRange;
4214 CALL0 Nex_MapSelector_Synchronize;
4218 void () Item_DataLink_Nex_MapList_ExecString;
4219 void() Item_DataLink_Nex_MapList_ExecString = asm
4225 INDIRECT_S self, cvarName, temp_3;
4226 INDIRECT_S self, cvarName, temp_4;
4227 STORE_F "set "", parm0_x;
4228 STORE_F temp_3, parm1_x;
4229 STORE_F "_index" "0"
4231 STORE_F temp_4, parm3_x;
4236 STORE_F Data_ExecString, parm0_x;
4237 STORE_F return_x, parm1_x;
4238 CALL2 String_Append;
4239 STORE_S return_x, Data_ExecString;
4240 INDIRECT_S self, valueList, parm0_x;
4241 CALL1 Util_GetAltStringCount;
4242 STORE_F return_x, lCount;
4243 STORE_F KEY_GAME, lIndex;
4244 LT lIndex, lCount, temp_3;
4246 INDIRECT_S self, valueList, parm0_x;
4247 STORE_F lIndex, parm1_x;
4248 CALL2 Util_GetAltStringItem;
4249 STORE_F return_x, parm0_x;
4250 CALL1 String_Normal;
4251 STORE_F "'", parm0_x;
4252 STORE_F return_x, parm1_x;
4256 STORE_F Data_ExecString, parm0_x;
4257 STORE_F return_x, parm1_x;
4258 CALL2 String_Append;
4259 STORE_S return_x, Data_ExecString;
4260 STORE_F lIndex, temp_4;
4261 ADD_F lIndex, FILE_APPEND, lIndex;
4263 STORE_F Data_ExecString, parm0_x;
4266 CALL2 String_Append;
4267 STORE_S return_x, Data_ExecString;
4271 void(float pEvent) Item_DataLink_Nex_MapList_DataEvent = asm
4273 local float locked_1174;
4276 INDIRECT_S self, cvarName, locked_1174;
4277 NE_S locked_1174, "", locked_1174;
4278 IFNOT locked_1174, 2;
4279 CALL0 Item_DataLink_Nex_MapList_Load;
4281 INDIRECT_S self, cvarName, locked_1174;
4282 NE_S locked_1174, "", locked_1174;
4283 IFNOT locked_1174, 2;
4284 CALL0 Item_DataLink_Nex_MapList_Save;
4286 ADDRESS self, _realValue, locked_1174;
4287 STOREP_F FILE_APPEND, locked_1174;
4291 INDIRECT_S self, cvarName, locked_1174;
4292 NE_S locked_1174, "", locked_1174;
4293 IFNOT locked_1174, 2;
4294 CALL0 Item_DataLink_Nex_MapList_ExecString;
4296 ADDRESS self, _realValue, locked_1174;
4297 INDIRECT_F self, _realValue, parm0_x;
4299 STOREP_F return_x, locked_1174;
4300 INDIRECT_F self, _realValue, locked_1174;
4301 LT locked_1174, FILE_APPEND, locked_1174;
4302 IFNOT locked_1174, 4;
4303 ADDRESS self, _realValue, locked_1174;
4304 STOREP_F FILE_APPEND, locked_1174;
4306 INDIRECT_F self, _realValue, locked_1174;
4307 INDIRECT_F self, maxValue, temp_4;
4308 GT locked_1174, temp_4, locked_1174;
4309 IFNOT locked_1174, 4;
4310 ADDRESS self, _realValue, locked_1174;
4311 INDIRECT_F self, maxValue, temp_4;
4312 STOREP_F temp_4, locked_1174;
4315 EQ_F pEvent, ITEM_DATA_SEND, locked_1174;
4316 IF locked_1174, -35;
4317 EQ_F pEvent, ITEM_DATA_RESET, locked_1174;
4318 IF locked_1174, -32;
4319 EQ_F pEvent, ITEM_DATA_TEST_START, locked_1174;
4320 IF locked_1174, -31;
4321 EQ_F pEvent, ITEM_DATA_TEST_END, locked_1174;
4322 IF locked_1174, -32;
4323 EQ_F pEvent, ITEM_DATA_SAVE_EXECSTRING, locked_1174;
4324 IF locked_1174, -33;
4325 EQ_F pEvent, ITEM_DATALINK_SET, locked_1174;
4326 IF locked_1174, -30;
4327 EQ_F pEvent, ITEM_DATALINK_GET, locked_1174;
4328 IF locked_1174, -32;
4332 void () IDLNML_Reinit;
4333 void() IDLNML_Reinit = asm
4335 STORE_F self, parm0_x;
4336 STORE_F ITEM_DATA_SYNC, parm1_x;
4337 CALL2 Raise_DataEvent;
4341 void () Item_DataLink_Nex_MapList_Destroy;
4342 void() Item_DataLink_Nex_MapList_Destroy = asm
4344 STORE_F self, parm0_x;
4345 STORE_F valueList, parm1_x;
4346 CALL2 String_EntityFree;
4347 STORE_F self, parm0_x;
4348 STORE_F cvarName, parm1_x;
4349 CALL2 String_EntityFree;
4350 CALL0 Item_DataLink_Switch_Destroy;
4354 void() Item_DataLink_Nex_MapList_Spawn = asm
4357 CALL0 Item_DataLink_Switch_Init;
4358 STORE_F self, parm0_x;
4359 STORE_F valueList, parm1_x;
4360 CALL2 String_EntityZone;
4361 STORE_F self, parm0_x;
4362 STORE_F cvarName, parm1_x;
4363 CALL2 String_EntityZone;
4364 INDIRECT_S self, cvarName, temp_3;
4365 NE_S temp_3, "", temp_3;
4367 INDIRECT_S self, cvarName, parm0_x;
4368 STORE_F "", parm1_x;
4369 STORE_F FILE_APPEND, parm2_x;
4371 INDIRECT_S self, cvarName, parm0_x;
4372 STORE_F "_index", parm1_x;
4374 STORE_F return_x, parm0_x;
4375 STORE_F "", parm1_x;
4376 STORE_F FILE_APPEND, parm2_x;
4378 ADDRESS self, minValue, temp_3;
4379 STOREP_F FILE_APPEND, temp_3;
4380 ADDRESS self, maxValue, temp_3;
4381 STOREP_F FILE_APPEND, temp_3;
4382 ADDRESS self, stepValue, temp_3;
4383 STOREP_F KEY_GAME, temp_3;
4384 ADDRESS self, _reinit, temp_3;
4385 STOREP_FNC IDLNML_Reinit, temp_3;
4386 ADDRESS self, _dataEvent, temp_3;
4387 STOREP_FNC Item_DataLink_Nex_MapList_DataEvent, temp_3;
4388 ADDRESS self, _destroy, temp_3;
4389 STOREP_FNC Item_DataLink_Nex_MapList_Destroy, temp_3;
4394 void() Item_DataLink_Nex_MapList_InitWithMapList = asm
4396 CALL0 Nex_MapDB_GetPathAltString;
4397 STORE_F self, parm0_x;
4398 STORE_F valueList, parm1_x;
4399 STORE_F return_x, parm2_x;
4400 CALL3 String_EntitySet;
4401 CALL0 Nex_MapDB_GetNameAltString;
4402 STORE_F self, parm0_x;
4403 STORE_F descList, parm1_x;
4404 STORE_F return_x, parm2_x;
4405 CALL3 String_EntitySet;
4406 STORE_F self, parm0_x;
4407 CALL1 DataLink_Nex_MapList_UpdateRange;
4411 void(entity pItem) DataLink_Nex_MapList_UpdateRange = asm
4413 local float locked_1174;
4415 ADDRESS pItem, minValue, locked_1174;
4416 STOREP_F FILE_APPEND, locked_1174;
4417 ADDRESS pItem, maxValue, locked_1174;
4418 INDIRECT_S pItem, descList, parm0_x;
4419 CALL1 Util_GetAltStringCount;
4420 STOREP_F return_x, locked_1174;
4421 INDIRECT_F pItem, maxValue, locked_1174;
4422 GE locked_1174, FILE_APPEND, locked_1174;
4423 IFNOT locked_1174, 4;
4424 ADDRESS pItem, stepValue, locked_1174;
4425 STOREP_F FILE_APPEND, locked_1174;
4427 ADDRESS pItem, maxValue, locked_1174;
4428 STOREP_F FILE_APPEND, locked_1174;
4429 ADDRESS pItem, stepValue, locked_1174;
4430 STOREP_F KEY_GAME, locked_1174;
4434 void(entity pItem, string pName, string pPath) DataLink_Nex_MapList_InsertEntryAfter = asm
4436 local float locked_1174;
4439 STORE_F pItem, parm0_x;
4440 STORE_F ITEM_DATALINK_GET, parm1_x;
4441 CALL2 Raise_DataEvent;
4442 INDIRECT_F pItem, _realValue, locked_1174;
4443 SUB_F locked_1174, FILE_APPEND, lIndex;
4444 ADDRESS pItem, descList, locked_1174;
4445 INDIRECT_S pItem, descList, parm0_x;
4446 STORE_F lIndex, parm1_x;
4447 STORE_F pName, parm2_x;
4448 CALL3 Util_InsAltStringItem;
4449 STOREP_S return_x, locked_1174;
4450 ADDRESS pItem, valueList, locked_1174;
4451 INDIRECT_S pItem, valueList, parm0_x;
4452 STORE_F lIndex, parm1_x;
4453 STORE_F pPath, parm2_x;
4454 CALL3 Util_InsAltStringItem;
4455 STOREP_S return_x, locked_1174;
4456 STORE_F pItem, parm0_x;
4457 CALL1 DataLink_Nex_MapList_UpdateRange;
4461 void(entity pItem) DataLink_Nex_MapList_DeleteEntry = asm
4463 local float locked_1174;
4466 INDIRECT_F pItem, stepValue, locked_1174;
4467 EQ_F locked_1174, KEY_GAME, locked_1174;
4468 IFNOT locked_1174, 2;
4470 STORE_F pItem, parm0_x;
4471 STORE_F ITEM_DATALINK_GET, parm1_x;
4472 CALL2 Raise_DataEvent;
4473 INDIRECT_F pItem, _realValue, locked_1174;
4474 SUB_F locked_1174, FILE_APPEND, lIndex;
4475 ADDRESS pItem, descList, locked_1174;
4476 INDIRECT_S pItem, descList, parm0_x;
4477 STORE_F lIndex, parm1_x;
4478 CALL2 Util_DelAltStringItem;
4479 STOREP_S return_x, locked_1174;
4480 ADDRESS pItem, valueList, locked_1174;
4481 INDIRECT_S pItem, valueList, parm0_x;
4482 STORE_F lIndex, parm1_x;
4483 CALL2 Util_DelAltStringItem;
4484 STOREP_S return_x, locked_1174;
4485 STORE_F pItem, parm0_x;
4486 CALL1 DataLink_Nex_MapList_UpdateRange;
4490 void(entity pItem) DataLink_Nex_MapList_MoveEntryUp = asm
4492 local float locked_1020;
4493 local float locked_1174;
4494 local float lIndexOld;
4495 local float lIndexNew;
4498 STORE_F pItem, parm0_x;
4499 STORE_F ITEM_DATALINK_GET, parm1_x;
4500 CALL2 Raise_DataEvent;
4501 INDIRECT_F pItem, _realValue, locked_1174;
4502 EQ_F locked_1174, FILE_APPEND, locked_1174;
4503 IFNOT locked_1174, 2;
4505 INDIRECT_F pItem, _realValue, locked_1174;
4506 SUB_F locked_1174, FILE_APPEND, lIndexOld;
4507 SUB_F lIndexOld, KEY_MENU, lIndexNew;
4508 INDIRECT_S pItem, descList, parm0_x;
4509 STORE_F lIndexOld, parm1_x;
4510 CALL2 Util_GetAltStringItem;
4511 STORE_S return_x, lName;
4512 INDIRECT_S pItem, valueList, parm0_x;
4513 STORE_F lIndexOld, parm1_x;
4514 CALL2 Util_GetAltStringItem;
4515 STORE_S return_x, lPath;
4516 ADDRESS pItem, descList, locked_1174;
4517 INDIRECT_S pItem, descList, locked_1020;
4518 STORE_F lName, parm0_x;
4519 CALL1 String_Normal;
4520 STORE_F locked_1020, parm0_x;
4521 STORE_F lIndexNew, parm1_x;
4522 STORE_F return_x, parm2_x;
4523 CALL3 Util_InsAltStringItem;
4524 STOREP_S return_x, locked_1174;
4525 ADDRESS pItem, valueList, locked_1174;
4526 INDIRECT_S pItem, valueList, locked_1020;
4527 STORE_F lPath, parm0_x;
4528 CALL1 String_Normal;
4529 STORE_F locked_1020, parm0_x;
4530 STORE_F lIndexNew, parm1_x;
4531 STORE_F return_x, parm2_x;
4532 CALL3 Util_InsAltStringItem;
4533 STOREP_S return_x, locked_1174;
4534 ADD_F lIndexOld, FILE_APPEND, lIndexOld;
4535 ADDRESS pItem, descList, locked_1174;
4536 INDIRECT_S pItem, descList, parm0_x;
4537 STORE_F lIndexOld, parm1_x;
4538 CALL2 Util_DelAltStringItem;
4539 STOREP_S return_x, locked_1174;
4540 ADDRESS pItem, valueList, locked_1174;
4541 INDIRECT_S pItem, valueList, parm0_x;
4542 STORE_F lIndexOld, parm1_x;
4543 CALL2 Util_DelAltStringItem;
4544 STOREP_S return_x, locked_1174;
4545 STORE_F pItem, parm0_x;
4546 CALL1 DataLink_Nex_MapList_UpdateRange;
4550 void(entity pItem) DataLink_Nex_MapList_MoveEntryDown = asm
4552 local float locked_1020;
4553 local float locked_1174;
4554 local float lIndexOld;
4555 local float lIndexNew;
4558 STORE_F pItem, parm0_x;
4559 STORE_F ITEM_DATALINK_GET, parm1_x;
4560 CALL2 Raise_DataEvent;
4561 INDIRECT_F pItem, _realValue, locked_1174;
4562 INDIRECT_F pItem, maxValue, locked_1020;
4563 EQ_F locked_1174, locked_1020, locked_1174;
4564 IFNOT locked_1174, 2;
4566 INDIRECT_F pItem, _realValue, locked_1174;
4567 SUB_F locked_1174, FILE_APPEND, lIndexOld;
4568 ADD_F lIndexOld, FILE_APPEND, lIndexNew;
4569 INDIRECT_S pItem, descList, parm0_x;
4570 STORE_F lIndexOld, parm1_x;
4571 CALL2 Util_GetAltStringItem;
4572 STORE_S return_x, lName;
4573 INDIRECT_S pItem, valueList, parm0_x;
4574 STORE_F lIndexOld, parm1_x;
4575 CALL2 Util_GetAltStringItem;
4576 STORE_S return_x, lPath;
4577 ADDRESS pItem, descList, locked_1174;
4578 INDIRECT_S pItem, descList, locked_1020;
4579 STORE_F lName, parm0_x;
4580 CALL1 String_Normal;
4581 STORE_F locked_1020, parm0_x;
4582 STORE_F lIndexNew, parm1_x;
4583 STORE_F return_x, parm2_x;
4584 CALL3 Util_InsAltStringItem;
4585 STOREP_S return_x, locked_1174;
4586 ADDRESS pItem, valueList, locked_1174;
4587 INDIRECT_S pItem, valueList, locked_1020;
4588 STORE_F lPath, parm0_x;
4589 CALL1 String_Normal;
4590 STORE_F locked_1020, parm0_x;
4591 STORE_F lIndexNew, parm1_x;
4592 STORE_F return_x, parm2_x;
4593 CALL3 Util_InsAltStringItem;
4594 STOREP_S return_x, locked_1174;
4595 ADDRESS pItem, descList, locked_1174;
4596 INDIRECT_S pItem, descList, parm0_x;
4597 STORE_F lIndexOld, parm1_x;
4598 CALL2 Util_DelAltStringItem;
4599 STOREP_S return_x, locked_1174;
4600 ADDRESS pItem, valueList, locked_1174;
4601 INDIRECT_S pItem, valueList, parm0_x;
4602 STORE_F lIndexOld, parm1_x;
4603 CALL2 Util_DelAltStringItem;
4604 STOREP_S return_x, locked_1174;
4605 STORE_F pItem, parm0_x;
4606 CALL1 DataLink_Nex_MapList_UpdateRange;
4610 void(entity pItem, string pName, string pPath) DataLink_Nex_MapList_SetFirst = asm
4612 local float locked_1174;
4614 INDIRECT_F pItem, stepValue, locked_1174;
4615 EQ_F locked_1174, KEY_GAME, locked_1174;
4616 IFNOT locked_1174, 12;
4617 ADDRESS pItem, descList, locked_1174;
4618 INDIRECT_S pItem, descList, parm0_x;
4619 STORE_F pName, parm1_x;
4620 CALL2 Util_AltStringPush;
4621 STOREP_S return_x, locked_1174;
4622 ADDRESS pItem, valueList, locked_1174;
4623 INDIRECT_S pItem, valueList, parm0_x;
4624 STORE_F pPath, parm1_x;
4625 CALL2 Util_AltStringPush;
4626 STOREP_S return_x, locked_1174;
4628 ADDRESS pItem, descList, locked_1174;
4629 INDIRECT_S pItem, descList, parm0_x;
4630 STORE_F KEY_GAME, parm1_x;
4631 STORE_F pName, parm2_x;
4632 CALL3 Util_SetAltStringItem;
4633 STOREP_S return_x, locked_1174;
4634 ADDRESS pItem, valueList, locked_1174;
4635 INDIRECT_S pItem, valueList, parm0_x;
4636 STORE_F KEY_GAME, parm1_x;
4637 STORE_F pPath, parm2_x;
4638 CALL3 Util_SetAltStringItem;
4639 STOREP_S return_x, locked_1174;
4640 STORE_F pItem, parm0_x;
4641 CALL1 DataLink_Nex_MapList_UpdateRange;
4645 void(entity pItem) DataLink_Nex_MapList_Clear = asm
4647 STORE_F pItem, parm0_x;
4648 STORE_F descList, parm1_x;
4649 STORE_F "", parm2_x;
4650 CALL3 String_EntitySet;
4651 STORE_F pItem, parm0_x;
4652 STORE_F valueList, parm1_x;
4653 STORE_F "", parm2_x;
4654 CALL3 String_EntitySet;
4655 STORE_F pItem, parm0_x;
4656 CALL1 DataLink_Nex_MapList_UpdateRange;
4660 string(entity pItem) DataLink_Nex_MapList_GetCurrentName = asm
4664 STORE_F pItem, parm0_x;
4665 STORE_F ITEM_DATALINK_GET, parm1_x;
4666 CALL2 Raise_DataEvent;
4667 INDIRECT_S pItem, descList, temp_3;
4668 INDIRECT_F pItem, _realValue, temp_4;
4669 SUB_F temp_4, FILE_APPEND, temp_4;
4670 STORE_F temp_3, parm0_x;
4671 STORE_F temp_4, parm1_x;
4672 CALL2 Util_GetAltStringItem;
4677 string(entity pItem) DataLink_Nex_MapList_GetCurrentPath = asm
4681 STORE_F pItem, parm0_x;
4682 STORE_F ITEM_DATALINK_GET, parm1_x;
4683 CALL2 Raise_DataEvent;
4684 INDIRECT_S pItem, valueList, temp_3;
4685 INDIRECT_F pItem, _realValue, temp_4;
4686 SUB_F temp_4, FILE_APPEND, temp_4;
4687 STORE_F temp_3, parm0_x;
4688 STORE_F temp_4, parm1_x;
4689 CALL2 Util_GetAltStringItem;
4694 void () _IDLNMS_Build;
4695 void() _IDLNMS_Build = asm
4698 local string lModPath;
4699 local string lModName;
4700 local string lFilename;
4701 local float lHandle;
4702 local float lSearchCounter;
4703 local float lSearchSize;
4704 local float lSearchHandle;
4706 STORE_F "/*.modinfo", parm0_x;
4707 STORE_F FILE_APPEND, parm1_x;
4708 STORE_F FILE_APPEND, parm2_x;
4710 STORE_F return_x, lSearchHandle;
4711 LT lSearchHandle, KEY_GAME, temp_3;
4713 STORE_F self, parm0_x;
4714 STORE_F valueList, parm1_x;
4715 STORE_F "'progs.dat'", parm2_x;
4716 CALL3 String_EntitySet;
4717 STORE_F self, parm0_x;
4718 STORE_F descList, parm1_x;
4719 STORE_F "'Deathmatch'", parm2_x;
4720 CALL3 String_EntitySet;
4722 STORE_F lSearchHandle, parm0_x;
4723 CALL1 search_getsize;
4724 STORE_F return_x, lSearchSize;
4725 STORE_F KEY_GAME, lSearchCounter;
4726 LT lSearchCounter, lSearchSize, temp_3;
4728 STORE_F lSearchHandle, parm0_x;
4729 STORE_F lSearchCounter, parm1_x;
4730 CALL2 search_getfilename;
4731 STORE_S return_x, lFilename;
4732 STORE_F lFilename, parm0_x;
4733 STORE_F FILE_APPEND, parm1_x;
4734 STORE_F 100000.000000, parm2_x;
4736 STORE_F return_x, parm0_x;
4737 STORE_F KEY_GAME, parm1_x;
4739 STORE_F return_x, lHandle;
4740 LT lHandle, KEY_GAME, temp_3;
4742 STORE_F "Menu: Couldn't open modinfo file '", parm0_x;
4743 STORE_F lFilename, parm1_x;
4748 CALL0 String_Create;
4749 STORE_S return_x, lModPath;
4750 CALL0 String_Create;
4751 STORE_S return_x, lModName;
4752 STORE_F lHandle, parm0_x;
4754 STORE_S return_x, lLine;
4755 STORE_F lLine, parm0_x;
4759 STORE_F lModPath, parm0_x;
4760 STORE_F lLine, parm1_x;
4762 STORE_S return_x, lModPath;
4763 STORE_F lHandle, parm0_x;
4765 STORE_S return_x, lLine;
4766 STORE_F lLine, parm0_x;
4770 STORE_F lModName, parm0_x;
4771 STORE_F lLine, parm1_x;
4773 STORE_S return_x, lModName;
4774 INDIRECT_S self, valueList, parm0_x;
4775 STORE_F lModPath, parm1_x;
4776 STORE_F " ", parm2_x;
4778 STORE_F self, parm0_x;
4779 STORE_F valueList, parm1_x;
4780 STORE_F return_x, parm2_x;
4781 CALL3 String_EntitySet;
4782 INDIRECT_S self, descList, parm0_x;
4783 STORE_F lModName, parm1_x;
4784 STORE_F " ", parm2_x;
4786 STORE_F self, parm0_x;
4787 STORE_F descList, parm1_x;
4788 STORE_F return_x, parm2_x;
4789 CALL3 String_EntitySet;
4791 STORE_F lModPath, parm0_x;
4793 STORE_F lModName, parm0_x;
4795 STORE_F lHandle, parm0_x;
4797 ADD_F lSearchCounter, FILE_APPEND, lSearchCounter;
4799 STORE_F lSearchHandle, parm0_x;
4804 void() Item_DataLink_Nex_ModSwitch_Spawn = asm
4806 local string lTemp2;
4807 local string lTemp1;
4809 STORE_F self, parm0_x;
4810 STORE_F valueList, parm1_x;
4811 CALL2 String_EntityCreate;
4812 STORE_F self, parm0_x;
4813 STORE_F descList, parm1_x;
4814 CALL2 String_EntityCreate;
4815 CALL0 _IDLNMS_Build;
4816 INDIRECT_S self, descList, lTemp1;
4817 INDIRECT_S self, valueList, lTemp2;
4818 CALL0 Item_DataLink_TextSwitch_Spawn;
4819 STORE_F lTemp1, parm0_x;
4821 STORE_F lTemp2, parm0_x;
4826 void () IDLNFL_Sync;
4827 void() IDLNFL_Sync = asm
4829 local float locked_1020;
4830 local float locked_1174;
4831 local string lFilename;
4832 local float lCounter;
4833 local float lMaskedLength;
4834 local float lMaskStart;
4835 local float lHandle;
4838 INDIRECT_S self, selected, locked_1174;
4839 INDIRECT_S self, normal, locked_1020;
4840 STORE_F locked_1174, parm0_x;
4841 STORE_F "/*.", parm1_x;
4842 STORE_F locked_1020, parm2_x;
4844 STORE_F return_x, parm0_x;
4845 STORE_F FILE_APPEND, parm1_x;
4846 STORE_F FILE_APPEND, parm2_x;
4848 STORE_F return_x, lHandle;
4849 LT lHandle, KEY_GAME, locked_1174;
4850 IFNOT locked_1174, 2;
4852 STORE_F lHandle, parm0_x;
4853 CALL1 search_getsize;
4854 STORE_F return_x, lCount;
4855 STORE_F self, parm0_x;
4856 STORE_F valueList, parm1_x;
4857 STORE_F "", parm2_x;
4858 CALL3 String_EntitySet;
4859 STORE_F self, parm0_x;
4860 STORE_F descList, parm1_x;
4861 STORE_F "", parm2_x;
4862 CALL3 String_EntitySet;
4863 INDIRECT_S self, selected, parm0_x;
4865 ADD_F return_x, FILE_APPEND, lMaskStart;
4866 INDIRECT_S self, normal, parm0_x;
4868 ADD_F lMaskStart, return_x, locked_1174;
4869 ADD_F locked_1174, FILE_APPEND, lMaskedLength;
4870 STORE_F KEY_GAME, lCounter;
4871 LT lCounter, lCount, locked_1174;
4872 IFNOT locked_1174, 26;
4873 STORE_F lHandle, parm0_x;
4874 STORE_F lCounter, parm1_x;
4875 CALL2 search_getfilename;
4876 STORE_S return_x, lFilename;
4877 ADDRESS self, valueList, locked_1174;
4878 INDIRECT_S self, valueList, parm0_x;
4879 STORE_F lFilename, parm1_x;
4880 CALL2 Util_AltStringPushBack;
4881 STOREP_S return_x, locked_1174;
4882 ADDRESS self, descList, locked_1174;
4883 INDIRECT_S self, descList, locked_1020;
4884 STORE_F lFilename, parm0_x;
4886 SUB_F return_x, lMaskedLength, temp_5;
4887 STORE_F lFilename, parm0_x;
4888 STORE_F lMaskStart, parm1_x;
4889 STORE_F temp_5, parm2_x;
4891 STORE_F locked_1020, parm0_x;
4892 STORE_F return_x, parm1_x;
4893 CALL2 Util_AltStringPushBack;
4894 STOREP_S return_x, locked_1174;
4895 STORE_F lCounter, locked_1020;
4896 ADD_F lCounter, FILE_APPEND, lCounter;
4898 ADDRESS self, minValue, locked_1174;
4899 STOREP_F KEY_GAME, locked_1174;
4900 GT lCount, KEY_GAME, locked_1174;
4901 IFNOT locked_1174, 7;
4902 ADDRESS self, stepValue, locked_1174;
4903 STOREP_F FILE_APPEND, locked_1174;
4904 ADDRESS self, maxValue, locked_1174;
4905 SUB_F lCount, FILE_APPEND, locked_1020;
4906 STOREP_F locked_1020, locked_1174;
4908 ADDRESS self, stepValue, locked_1174;
4909 STOREP_F KEY_GAME, locked_1174;
4910 ADDRESS self, maxValue, locked_1174;
4911 STOREP_F KEY_GAME, locked_1174;
4915 void() Item_DataLink_Nex_FileList_Destroy = asm
4917 STORE_F self, parm0_x;
4918 STORE_F valueList, parm1_x;
4919 CALL2 String_EntityFree;
4920 STORE_F self, parm0_x;
4921 STORE_F normal, parm1_x;
4922 CALL2 String_EntityFree;
4923 STORE_F self, parm0_x;
4924 STORE_F selected, parm1_x;
4925 CALL2 String_EntityFree;
4926 CALL0 Item_DataLink_Switch_Destroy;
4930 void(float pEvent) Item_DataLink_Nex_FileList_DataEvent = asm
4937 ADDRESS self, _realValue, temp_3;
4938 STOREP_F KEY_GAME, temp_3;
4941 EQ_F pEvent, ITEM_DATA_RESET, temp_3;
4946 void() Item_DataLink_Nex_FileList_Spawn = asm
4949 CALL0 Item_DataLink_Switch_Init;
4950 STORE_F self, parm0_x;
4951 STORE_F valueList, parm1_x;
4952 CALL2 String_EntityCreate;
4953 STORE_F self, parm0_x;
4954 STORE_F normal, parm1_x;
4955 CALL2 String_EntityZone;
4956 STORE_F self, parm0_x;
4957 STORE_F selected, parm1_x;
4958 CALL2 String_EntityZone;
4959 ADDRESS self, _reinit, temp_3;
4960 STOREP_FNC IDLNFL_Sync, temp_3;
4961 ADDRESS self, _destroy, temp_3;
4962 STOREP_FNC Item_DataLink_Nex_FileList_Destroy, temp_3;
4963 ADDRESS self, _dataEvent, temp_3;
4964 STOREP_FNC Item_DataLink_Nex_FileList_DataEvent, temp_3;
4968 void(entity pItem) Nex_MakeOnlyVisible = asm
4970 local entity lChild;
4973 INDIRECT_E pItem, _parent, temp_3;
4974 INDIRECT_E temp_3, _child, lChild;
4976 ADDRESS lChild, flag, temp_3;
4977 INDIRECT_F lChild, flag, temp_4;
4978 BITOR temp_4, FLAG_HIDDEN, temp_4;
4979 STOREP_F temp_4, temp_3;
4980 INDIRECT_E lChild, _next, lChild;
4982 ADDRESS pItem, flag, temp_3;
4983 INDIRECT_F pItem, flag, temp_4;
4984 SUB_F temp_4, FLAG_HIDDEN, temp_4;
4985 STOREP_F temp_4, temp_3;
4986 CALL0 Menu_UpdateRunFlags;
4991 void() _IDNK_Sync = asm
4994 INDIRECT_S self, target, parm0_x;
4995 CALL1 Key_GetBindList;
4996 STORE_F return_x, parm0_x;
4997 CALL1 String_Normal;
4998 STORE_F self, parm0_x;
4999 STORE_F value, parm1_x;
5000 STORE_F return_x, parm2_x;
5001 CALL3 String_EntitySet;
5002 INDIRECT_S self, value, temp_3;
5003 STORE_F self, parm0_x;
5004 STORE_F _syncValue, parm1_x;
5005 STORE_F temp_3, parm2_x;
5006 CALL3 String_EntitySet;
5011 void() _IDNK_Set = asm
5013 local float lCounter;
5016 INDIRECT_S self, value, parm0_x;
5017 CALL1 Util_GetAltStringCount;
5018 STORE_F return_x, lCount;
5019 INDIRECT_S self, target, temp_3;
5020 STORE_F KEY_GAME, parm0_x;
5021 STORE_F temp_3, parm1_x;
5022 CALL2 Key_LimitBinds;
5023 STORE_F KEY_GAME, lCounter;
5024 LT lCounter, lCount, temp_3;
5026 INDIRECT_S self, value, parm0_x;
5027 STORE_F lCounter, parm1_x;
5028 CALL2 Util_GetAltStringItem;
5029 STORE_F return_x, parm0_x;
5030 CALL1 String_Normal;
5031 STORE_F return_x, parm0_x;
5033 STORE_F return_x, parm0_x;
5035 INDIRECT_S self, target, temp_3;
5036 STORE_F return_x, parm0_x;
5037 STORE_F temp_3, parm1_x;
5039 ADD_F lCounter, FILE_APPEND, lCounter;
5045 void() _IDNK_Send = asm
5049 INDIRECT_S self, value, temp_3;
5050 STORE_F self, parm0_x;
5051 STORE_F _syncValue, parm1_x;
5052 STORE_F temp_3, parm2_x;
5053 CALL3 String_EntitySet;
5057 void () _IDNK_Reset;
5058 void() _IDNK_Reset = asm
5060 local float locked_1174;
5062 local float lCounter;
5065 INDIRECT_S self, defValue, locked_1174;
5066 NOT_S locked_1174, locked_1174;
5067 IFNOT locked_1174, 2;
5069 STORE_F self, parm0_x;
5070 STORE_F value, parm1_x;
5071 STORE_F "", parm2_x;
5072 CALL3 String_EntitySet;
5073 INDIRECT_S self, defValue, parm0_x;
5074 CALL1 Util_GetAltStringCount;
5075 STORE_F return_x, lCount;
5076 INDIRECT_S self, target, locked_1174;
5077 STORE_F KEY_GAME, parm0_x;
5078 STORE_F locked_1174, parm1_x;
5079 CALL2 Key_LimitBinds;
5080 STORE_F KEY_GAME, lCounter;
5081 LT lCounter, lCount, locked_1174;
5082 IFNOT locked_1174, 26;
5083 INDIRECT_S self, defValue, parm0_x;
5084 STORE_F lCounter, parm1_x;
5085 CALL2 Util_GetAltStringItem;
5086 STORE_S return_x, lKey;
5087 INDIRECT_S self, target, locked_1174;
5088 STORE_F lKey, parm0_x;
5089 STORE_F locked_1174, parm1_x;
5091 INDIRECT_S self, value, locked_1174;
5092 STORE_F lKey, parm0_x;
5094 STORE_F locked_1174, parm0_x;
5095 STORE_F " '", parm1_x;
5096 STORE_F return_x, parm2_x;
5097 STORE_F "'", parm3_x;
5099 STORE_F self, parm0_x;
5100 STORE_F value, parm1_x;
5101 STORE_F return_x, parm2_x;
5102 CALL3 String_EntitySet;
5103 STORE_F lKey, parm0_x;
5105 STORE_F lCounter, temp_4;
5106 ADD_F lCounter, FILE_APPEND, lCounter;
5108 INDIRECT_S self, value, locked_1174;
5109 STORE_F self, parm0_x;
5110 STORE_F _syncValue, parm1_x;
5111 STORE_F locked_1174, parm2_x;
5112 CALL3 String_EntitySet;
5116 void () _IDNK_Test_Start;
5117 void() _IDNK_Test_Start = asm
5123 void () _IDNK_Test_End;
5124 void() _IDNK_Test_End = asm
5127 INDIRECT_S self, _syncValue, temp_3;
5128 STORE_F self, parm0_x;
5129 STORE_F value, parm1_x;
5130 STORE_F temp_3, parm2_x;
5131 CALL3 String_EntitySet;
5136 void(float pEvent) Item_Data_Nex_Key_DataEvent = asm
5146 CALL0 _IDNK_Test_Start;
5148 CALL0 _IDNK_Test_End;
5151 EQ_F pEvent, ITEM_DATA_SEND, temp_3;
5153 EQ_F pEvent, ITEM_DATA_RESET, temp_3;
5155 EQ_F pEvent, ITEM_DATA_TEST_START, temp_3;
5157 EQ_F pEvent, ITEM_DATA_TEST_END, temp_3;
5162 void () Item_Data_Nex_Key_Destroy;
5163 void() Item_Data_Nex_Key_Destroy = asm
5165 STORE_F self, parm0_x;
5166 STORE_F target, parm1_x;
5167 CALL2 String_EntityFree;
5168 CALL0 Item_Data_Destroy;
5172 void() Item_Data_Nex_Key_Spawn = asm
5175 CALL0 Item_Data_Init;
5176 STORE_F self, parm0_x;
5177 STORE_F target, parm1_x;
5178 CALL2 String_EntityZone;
5179 ADDRESS self, _destroy, temp_3;
5180 STOREP_FNC Item_Data_Nex_Key_Destroy, temp_3;
5181 ADDRESS self, _reinit, temp_3;
5182 STOREP_FNC _IDNK_Sync, temp_3;
5183 ADDRESS self, _dataEvent, temp_3;
5184 STOREP_FNC Item_Data_Nex_Key_DataEvent, temp_3;
5188 float (float, float) Item_Nex_KeyButton_Key;
5189 float(float pKey, float pAscii) Item_Nex_KeyButton_Key = asm
5193 EQ_F pKey, K_BACKSPACE, temp_3;
5195 INDIRECT_E self, _target, parm0_x;
5196 STORE_F ITEM_DATALINK_GET, parm1_x;
5197 CALL2 Raise_DataEvent;
5198 INDIRECT_E self, _target, temp_3;
5199 INDIRECT_S temp_3, value, parm0_x;
5201 STORE_F return_x, lNum;
5202 GE lNum, KEY_GAME, temp_3;
5204 STORE_F lNum, parm0_x;
5206 STORE_F return_x, parm0_x;
5208 INDIRECT_E self, _target, parm0_x;
5209 STORE_F ITEM_DATALINK_SET, parm1_x;
5210 CALL2 Raise_DataEvent;
5213 EQ_F pKey, K_UPARROW, temp_3;
5215 STORE_F KEY_GAME, parm0_x;
5216 CALL1 Menu_SelectPrev;
5217 STORE_F FILE_APPEND, parm0_x;
5218 CALL1 Menu_SelectPrev;
5221 EQ_F pKey, K_DOWNARROW, temp_3;
5223 STORE_F KEY_GAME, parm0_x;
5224 CALL1 Menu_SelectNext;
5225 STORE_F FILE_APPEND, parm0_x;
5226 CALL1 Menu_SelectNext;
5229 STORE_F pKey, parm0_x;
5230 STORE_F pAscii, parm1_x;
5231 CALL2 Item_Button_Key;
5236 void () Item_Nex_KeyButton_Update;
5237 void() Item_Nex_KeyButton_Update = asm
5241 CALL0 Item_DataUser_Update;
5242 INDIRECT_E self, _target, parm0_x;
5243 STORE_F ITEM_DATALINK_GET, parm1_x;
5244 CALL2 Raise_DataEvent;
5245 INDIRECT_E self, _target, temp_3;
5246 INDIRECT_S temp_3, value, parm0_x;
5248 STORE_F return_x, lNum;
5249 LT lNum, KEY_GAME, temp_3;
5251 STORE_F self, parm0_x;
5252 STORE_F normal, parm1_x;
5253 STORE_F "-", parm2_x;
5254 CALL3 String_EntitySet;
5256 STORE_F lNum, parm0_x;
5258 STORE_F self, parm0_x;
5259 STORE_F normal, parm1_x;
5260 STORE_F return_x, parm2_x;
5261 CALL3 String_EntitySet;
5262 CALL0 Item_Button_Update;
5266 void () Item_Nex_KeyButton_Destroy;
5267 void() Item_Nex_KeyButton_Destroy = asm
5269 CALL0 Item_DataUser_Destroy;
5270 CALL0 Item_Button_Destroy;
5274 void() Item_Nex_KeyButton_Spawn = asm
5277 CALL0 Item_DataUser_Init;
5278 CALL0 Item_Button_Spawn;
5279 ADDRESS self, _destroy, temp_3;
5280 STOREP_FNC Item_Nex_KeyButton_Destroy, temp_3;
5281 ADDRESS self, _update, temp_3;
5282 STOREP_FNC Item_Nex_KeyButton_Update, temp_3;
5283 ADDRESS self, _key, temp_3;
5284 STOREP_FNC Item_Nex_KeyButton_Key, temp_3;
5289 void() _IDNR_Sync = asm
5293 STORE_F "vid_width", parm0_x;
5295 STORE_F "vid_height", parm0_x;
5296 STORE_F return_x, temp_3;
5298 STORE_F return_x, temp_4;
5299 STORE_F temp_3, return_x;
5300 STORE_F return_x, parm0_x;
5301 STORE_F " ", parm1_x;
5302 STORE_F temp_4, parm2_x;
5304 STORE_F self, parm0_x;
5305 STORE_F value, parm1_x;
5306 STORE_F return_x, parm2_x;
5307 CALL3 String_EntitySet;
5308 INDIRECT_S self, value, temp_3;
5309 STORE_F self, parm0_x;
5310 STORE_F _syncValue, parm1_x;
5311 STORE_F temp_3, parm2_x;
5312 CALL3 String_EntitySet;
5317 void() _IDNR_Set = asm
5320 INDIRECT_S self, value, parm0_x;
5322 STORE_F KEY_GAME, parm0_x;
5324 STORE_F "vid_width", parm0_x;
5325 STORE_F return_x, parm1_x;
5327 STORE_F FILE_APPEND, parm0_x;
5329 STORE_F "vid_height", parm0_x;
5330 STORE_F return_x, parm1_x;
5336 void() _IDNR_Send = asm
5343 void () _IDNR_Reset;
5344 void() _IDNR_Reset = asm
5347 INDIRECT_S self, defValue, temp_3;
5348 STORE_F self, parm0_x;
5349 STORE_F value, parm1_x;
5350 STORE_F temp_3, parm2_x;
5351 CALL3 String_EntitySet;
5356 void () _IDNR_Test_Start;
5357 void() _IDNR_Test_Start = asm
5363 void () _IDNR_Test_End;
5364 void() _IDNR_Test_End = asm
5367 INDIRECT_S self, _syncValue, temp_3;
5368 STORE_F self, parm0_x;
5369 STORE_F value, parm1_x;
5370 STORE_F temp_3, parm2_x;
5371 CALL3 String_EntitySet;
5376 void (float) Item_Data_Nex_Resolution_DataEvent;
5377 void(float pEvent) Item_Data_Nex_Resolution_DataEvent = asm
5387 CALL0 _IDNR_Test_Start;
5389 CALL0 _IDNR_Test_End;
5392 EQ_F pEvent, ITEM_DATA_SEND, temp_3;
5394 EQ_F pEvent, ITEM_DATA_RESET, temp_3;
5396 EQ_F pEvent, ITEM_DATA_TEST_START, temp_3;
5398 EQ_F pEvent, ITEM_DATA_TEST_END, temp_3;
5403 void() Item_Data_Nex_Resolution_Spawn = asm
5406 CALL0 Item_Data_Init;
5407 ADDRESS self, _dataEvent, temp_3;
5408 STOREP_FNC Item_Data_Nex_Resolution_DataEvent, temp_3;
5409 ADDRESS self, _reinit, temp_3;
5410 STOREP_FNC _IDNR_Sync, temp_3;
5414 void() Item_Nex_HostCache_Entry_Update = asm
5418 INDIRECT_F self, stepValue, temp_3;
5419 LE HostCache_ViewCount, temp_3, temp_3;
5421 ADDRESS self, flag, temp_3;
5422 INDIRECT_F self, flag, temp_4;
5423 BITOR temp_4, FLAG_HIDDEN, temp_4;
5424 STOREP_F temp_4, temp_3;
5427 INDIRECT_F self, flag, temp_3;
5428 BITAND temp_3, FLAG_HIDDEN, temp_3;
5430 ADDRESS self, flag, temp_3;
5431 INDIRECT_F self, flag, temp_4;
5432 SUB_F temp_4, FLAG_HIDDEN, temp_4;
5433 STOREP_F temp_4, temp_3;
5434 INDIRECT_F self, _runFlag, temp_3;
5435 BITAND temp_3, RUNFLAG_CLIPPED, temp_3;
5438 CALL0 Item_Button_Update;
5442 void () Item_Nex_HostCache_Entry_Draw;
5443 void() Item_Nex_HostCache_Entry_Draw = asm
5445 CALL0 Item_Window_Draw;
5446 CALL0 Item_Button_Draw;
5450 void() Item_Nex_HostCache_Entry_Spawn = asm
5454 CALL0 Item_Window_Spawn;
5455 CALL0 Item_Button_Spawn;
5456 ADDRESS self, flag, temp_3;
5457 INDIRECT_F self, flag, temp_4;
5458 BITOR temp_4, FLAG_HIDDEN, temp_4;
5459 STOREP_F temp_4, temp_3;
5460 INDIRECT_F self, flag, temp_3;
5461 BITAND temp_3, FLAG_NOSELECT, temp_3;
5463 ADDRESS self, flag, temp_3;
5464 INDIRECT_F self, flag, temp_4;
5465 SUB_F temp_4, FLAG_NOSELECT, temp_4;
5466 STOREP_F temp_4, temp_3;
5467 ADDRESS self, _draw, temp_3;
5468 STOREP_FNC Item_Nex_HostCache_Entry_Draw, temp_3;
5469 ADDRESS self, _update, temp_3;
5470 STOREP_FNC Item_Nex_HostCache_Entry_Update, temp_3;
5474 void() Item_Nex_HostCache_StringField_Update = asm
5476 local string lString;
5477 local float lMaxLen;
5480 INDIRECT_E self, _parent, temp_3;
5481 INDIRECT_F temp_3, stepValue, temp_3;
5482 LE HostCache_ViewCount, temp_3, temp_3;
5485 INDIRECT_F self, size_x, temp_3;
5486 INDIRECT_F self, fontSize_x, temp_4;
5487 DIV_F temp_3, temp_4, parm0_x;
5489 STORE_F return_x, lMaxLen;
5490 INDIRECT_F self, _realValue, temp_3;
5491 INDIRECT_E self, _parent, temp_4;
5492 INDIRECT_F temp_4, stepValue, temp_4;
5493 STORE_F temp_3, parm0_x;
5494 STORE_F temp_4, parm1_x;
5495 CALL2 gethostcachestring;
5496 STORE_S return_x, lString;
5497 STORE_F lString, parm0_x;
5499 LT lMaxLen, return_x, temp_3;
5501 SUB_F lMaxLen, KEY_UNKNOWN, temp_3;
5502 STORE_F lString, parm0_x;
5503 STORE_F KEY_GAME, parm1_x;
5504 STORE_F temp_3, parm2_x;
5506 STORE_F return_x, parm0_x;
5507 STORE_F "...", parm1_x;
5509 STORE_S return_x, lString;
5510 STORE_F self, parm0_x;
5511 STORE_F text, parm1_x;
5512 STORE_F lString, parm2_x;
5513 CALL3 String_EntitySet;
5514 CALL0 Item_Label_Update;
5518 void() Item_Nex_HostCache_StringField_Spawn = asm
5520 local float locked_1174;
5522 CALL0 Item_Label_Spawn;
5523 ADDRESS self, _realValue, locked_1174;
5524 INDIRECT_S self, target, parm0_x;
5525 CALL1 gethostcacheindexforkey;
5526 STOREP_F return_x, locked_1174;
5527 ADDRESS self, _update, locked_1174;
5528 STOREP_FNC Item_Nex_HostCache_StringField_Update, locked_1174;
5532 void() Item_Nex_HostCache_ValueField_Update = asm
5536 INDIRECT_E self, _parent, temp_3;
5537 INDIRECT_F temp_3, stepValue, temp_3;
5538 LE HostCache_ViewCount, temp_3, temp_3;
5541 INDIRECT_F self, _realValue, temp_3;
5542 INDIRECT_E self, _parent, temp_4;
5543 INDIRECT_F temp_4, stepValue, temp_4;
5544 STORE_F temp_3, parm0_x;
5545 STORE_F temp_4, parm1_x;
5546 CALL2 gethostcachenumber;
5547 STORE_F return_x, parm0_x;
5549 STORE_F self, parm0_x;
5550 STORE_F text, parm1_x;
5551 STORE_F return_x, parm2_x;
5552 CALL3 String_EntitySet;
5553 CALL0 Item_Label_Update;
5557 void() Item_Nex_HostCache_ValueField_Spawn = asm
5559 local float locked_1174;
5561 CALL0 Item_Label_Spawn;
5562 ADDRESS self, _realValue, locked_1174;
5563 INDIRECT_S self, target, parm0_x;
5564 CALL1 gethostcacheindexforkey;
5565 STOREP_F return_x, locked_1174;
5566 ADDRESS self, _update, locked_1174;
5567 STOREP_FNC Item_Nex_HostCache_ValueField_Update, locked_1174;
5571 void() Item_Nex_HostCache_Players_Update = asm
5576 INDIRECT_E self, _parent, temp_3;
5577 INDIRECT_F temp_3, stepValue, temp_3;
5578 LE HostCache_ViewCount, temp_3, temp_3;
5581 INDIRECT_E self, _parent, temp_3;
5582 INDIRECT_F temp_3, stepValue, temp_3;
5583 STORE_F SLIST_FIELD_NUMPLAYERS, parm0_x;
5584 STORE_F temp_3, parm1_x;
5585 CALL2 gethostcachenumber;
5586 STORE_F return_x, parm0_x;
5588 STORE_S return_x, lNum;
5589 INDIRECT_E self, _parent, temp_3;
5590 INDIRECT_F temp_3, stepValue, temp_3;
5591 STORE_F SLIST_FIELD_MAXPLAYERS, parm0_x;
5592 STORE_F temp_3, parm1_x;
5593 CALL2 gethostcachenumber;
5594 STORE_F return_x, parm0_x;
5596 STORE_S return_x, lMax;
5597 STORE_F lNum, parm0_x;
5598 STORE_F "/", parm1_x;
5599 STORE_F lMax, parm2_x;
5601 STORE_F self, parm0_x;
5602 STORE_F text, parm1_x;
5603 STORE_F return_x, parm2_x;
5604 CALL3 String_EntitySet;
5605 CALL0 Item_Label_Update;
5609 void() Item_Nex_HostCache_Players_Spawn = asm
5612 CALL0 Item_Label_Spawn;
5613 ADDRESS self, _update, temp_3;
5614 STOREP_FNC Item_Nex_HostCache_Players_Update, temp_3;
5618 void() Item_Nex_Credits_Spawn = asm
5624 INDIRECT_S self, target, parm0_x;
5625 STORE_F KEY_GAME, parm1_x;
5627 STORE_F return_x, lFile;
5628 LT lFile, KEY_GAME, temp_3;
5630 STORE_F self, parm0_x;
5631 CALL1 Menu_DeleteAfterToggle;
5633 CALL0 String_Create;
5634 STORE_S return_x, lText;
5635 STORE_F lFile, parm0_x;
5637 STORE_S return_x, lLine;
5638 STORE_F lLine, parm0_x;
5642 STORE_F lText, parm0_x;
5643 STORE_F return_x, parm1_x;
5644 CALL2 String_Append;
5645 STORE_S return_x, lText;
5646 STORE_F lLine, parm0_x;
5649 ADDRESS self, text, temp_3;
5650 STOREP_S lText, temp_3;
5651 STORE_F lFile, parm0_x;
5653 CALL0 Item_MultiLabel_Spawn;
5654 STORE_F lText, parm0_x;
5659 void () Nex_MessageBox_LeftEvent;
5660 void () Nex_MessageBox_RightEvent;
5661 void(string pTitle, string pText, string pLeftButton, string pRightButton, void () pLeftEvent, void () pRightEvent) Nex_MessageBox = asm
5664 local vector temp_0;
5667 STORE_F "MessageBoxWnd::Layout::Title::Caption", parm0_x;
5669 STORE_ENT return_x, lItem;
5670 STORE_F lItem, parm0_x;
5671 STORE_F normal, parm1_x;
5672 STORE_F pTitle, parm2_x;
5673 CALL3 String_EntitySet;
5674 ADDRESS lItem, size_x, temp_0_x;
5675 STOREP_V '0.000000 0.000000 0.000000', temp_0;
5676 STORE_F "MessageBoxWnd::Layout::Text", parm0_x;
5678 STORE_ENT return_x, lItem;
5679 STORE_F lItem, parm0_x;
5680 STORE_F text, parm1_x;
5681 STORE_F pText, parm2_x;
5682 CALL3 String_EntitySet;
5683 ADDRESS lItem, size_x, temp_0_x;
5684 STOREP_V '0.000000 0.000000 0.000000', temp_0;
5685 STORE_F "MessageBoxWnd::Layout::Buttons::Left", parm0_x;
5687 STORE_ENT return_x, lItem;
5688 STORE_F lItem, parm0_x;
5689 STORE_F normal, parm1_x;
5690 STORE_F pLeftButton, parm2_x;
5691 CALL3 String_EntitySet;
5692 ADDRESS lItem, size_x, temp_0_x;
5693 STOREP_V '0.000000 0.000000 0.000000', temp_0;
5694 STORE_F "MessageBoxWnd::Layout::Buttons::Right", parm0_x;
5696 STORE_ENT return_x, lItem;
5697 STORE_F lItem, parm0_x;
5698 STORE_F normal, parm1_x;
5699 STORE_F pRightButton, parm2_x;
5700 CALL3 String_EntitySet;
5701 ADDRESS lItem, size_x, temp_0_x;
5702 STOREP_V '0.000000 0.000000 0.000000', temp_0;
5703 STORE_F pRightButton, parm0_x;
5705 EQ_F return_x, KEY_GAME, temp_3;
5707 ADDRESS lItem, flag, temp_3;
5708 INDIRECT_F lItem, flag, temp_4;
5709 BITOR temp_4, FLAG_HIDDEN, temp_4;
5710 STOREP_F temp_4, temp_3;
5712 INDIRECT_F lItem, flag, temp_3;
5713 BITAND temp_3, FLAG_HIDDEN, temp_3;
5715 ADDRESS lItem, flag, temp_3;
5716 INDIRECT_F lItem, flag, temp_4;
5717 SUB_F temp_4, FLAG_HIDDEN, temp_4;
5718 STOREP_F temp_4, temp_3;
5719 STORE_FNC pLeftEvent, Nex_MessageBox_LeftEvent;
5720 STORE_FNC pRightEvent, Nex_MessageBox_RightEvent;
5721 STORE_F "MessageBoxWnd", parm0_x;
5723 STORE_ENT return_x, lItem;
5724 INDIRECT_F lItem, flag, temp_3;
5725 BITAND temp_3, FLAG_HIDDEN, temp_3;
5727 ADDRESS lItem, flag, temp_3;
5728 INDIRECT_F lItem, flag, temp_4;
5729 SUB_F temp_4, FLAG_HIDDEN, temp_4;
5730 STOREP_F temp_4, temp_3;
5731 STORE_F "MessageBoxWnd::Layout::Buttons::Right", parm0_x;
5733 STORE_F return_x, parm0_x;
5734 STORE_F KEY_GAME, parm1_x;
5739 void () Nex_MessageBox_Hide;
5740 void() Nex_MessageBox_Hide = asm
5742 local entity lEntity;
5745 STORE_F "MessageBoxWnd", parm0_x;
5747 STORE_ENT return_x, lEntity;
5748 INDIRECT_F lEntity, flag, temp_3;
5749 BITAND temp_3, FLAG_HIDDEN, temp_3;
5751 ADDRESS lEntity, flag, temp_3;
5752 INDIRECT_F lEntity, flag, temp_4;
5753 ADD_F temp_4, FLAG_HIDDEN, temp_4;
5754 STOREP_F temp_4, temp_3;
5755 STORE_F KEY_GAME, parm0_x;
5756 CALL1 Menu_Reselect;
5760 void () Nex_MessageBox_LeftButton;
5761 void() Nex_MessageBox_LeftButton = asm
5763 IFNOT Nex_MessageBox_LeftEvent, 2;
5764 CALL0 Nex_MessageBox_LeftEvent;
5765 CALL0 Nex_MessageBox_Hide;
5769 void () Nex_MessageBox_RightButton;
5770 void() Nex_MessageBox_RightButton = asm
5772 IFNOT Nex_MessageBox_RightEvent, 2;
5773 CALL0 Nex_MessageBox_RightEvent;
5774 CALL0 Nex_MessageBox_Hide;
5778 float (float, float) Nex_MessageBox_Key;
5779 float(float pKey, float pAscii) Nex_MessageBox_Key = asm
5782 EQ_F pKey, K_ESCAPE, temp_3;
5784 CALL0 Nex_MessageBox_RightButton;
5790 void() Item_Automation_Init = asm
5793 ADDRESS self, flag, temp_3;
5794 STOREP_F FLAG_TEMPLATE, temp_3;
5795 STORE_F self, parm0_x;
5796 CALL1 Menu_DeleteAfterFrame;
5800 void() Item_Task_Init = asm
5803 ADDRESS self, flag, temp_3;
5804 STOREP_F FLAG_HIDDEN, temp_3;
5808 void() Item_Automation_ForEach_Spawn = asm
5810 local float locked_1174;
5814 CALL0 Item_Automation_Init;
5815 INDIRECT_S self, link, locked_1174;
5816 EQ_S locked_1174, "", locked_1174;
5817 IFNOT locked_1174, 3;
5818 INDIRECT_E self, _parent, lLink;
5820 INDIRECT_S self, link, parm0_x;
5822 STORE_ENT return_x, lLink;
5823 INDIRECT_S self, target, locked_1174;
5824 NOT_S locked_1174, locked_1174;
5826 INDIRECT_S self, target, parm0_x;
5827 STORE_F "_Spawn", parm1_x;
5829 STORE_F return_x, parm0_x;
5831 NOT_F return_x, temp_4;
5832 OR locked_1174, temp_4, locked_1174;
5833 IFNOT locked_1174, 4;
5834 STORE_F "Bad target type!", parm0_x;
5837 ADDRESS self, _current, locked_1174;
5838 INDIRECT_E lLink, _child, temp_4;
5839 STOREP_ENT temp_4, locked_1174;
5840 INDIRECT_E self, _current, locked_1174;
5841 IFNOT locked_1174, 12;
5842 INDIRECT_E self, _current, locked_1174;
5843 INDIRECT_S locked_1174, type, locked_1174;
5844 INDIRECT_S self, target, temp_4;
5845 EQ_S locked_1174, temp_4, locked_1174;
5846 IFNOT locked_1174, 2;
5847 CALL0 CtCall_Action;
5848 ADDRESS self, _current, temp_4;
5849 INDIRECT_E self, _current, temp_5;
5850 INDIRECT_E temp_5, _next, temp_5;
5851 STOREP_ENT temp_5, temp_4;
5856 void() Item_Automation_Job_Spawn = asm
5858 CALL0 Item_Automation_Init;
5859 CALL0 CtCall_Action;
5863 void() Item_Task_Job_Spawn = asm
5866 CALL0 Item_Task_Init;
5867 ADDRESS self, _reinit, temp_3;
5868 STOREP_FNC CtCall_Reinit, temp_3;
5869 ADDRESS self, _destroy, temp_3;
5870 STOREP_FNC CtCall_Destroy, temp_3;
5871 ADDRESS self, _update, temp_3;
5872 STOREP_FNC CtCall_Update, temp_3;
5877 void(entity pItem, bool pEvent) Raise_DataEvent = asm
5879 local float locked_1174;
5881 INDIRECT_FU pItem, _dataEvent, locked_1174;
5884 STORE_ENT self, lOld;
5885 STORE_ENT pItem, self;
5886 INDIRECT_FU self, _dataEvent, locked_1174;
5887 STORE_F pEvent, parm0_x;
5889 STORE_ENT lOld, self;
5893 void() Data_ExecString_BeginUse = asm
5895 CALL0 String_Create;
5896 STORE_S return_x, Data_ExecString;
5900 void() Data_ExecString_EndUse = asm
5902 STORE_F Data_ExecString, parm0_x;
5907 void() Item_Data_Destroy = asm
5909 STORE_F self, parm0_x;
5910 STORE_F value, parm1_x;
5911 CALL2 String_EntityFree;
5912 STORE_F self, parm0_x;
5913 STORE_F defValue, parm1_x;
5914 CALL2 String_EntityFree;
5915 STORE_F self, parm0_x;
5916 STORE_F _syncValue, parm1_x;
5917 CALL2 String_EntityFree;
5921 void() Item_Data_Init = asm
5925 STORE_F self, parm0_x;
5926 STORE_F value, parm1_x;
5927 CALL2 String_EntityZone;
5928 STORE_F self, parm0_x;
5929 STORE_F defValue, parm1_x;
5930 CALL2 String_EntityZone;
5931 STORE_F self, parm0_x;
5932 STORE_F _syncValue, parm1_x;
5933 CALL2 String_EntityCreate;
5934 ADDRESS self, flag, temp_3;
5935 INDIRECT_F self, flag, temp_4;
5936 BITOR temp_4, FLAG_HIDDEN, temp_4;
5937 STOREP_F temp_4, temp_3;
5938 ADDRESS self, _destroy, temp_3;
5939 STOREP_FNC Item_Data_Destroy, temp_3;
5943 void() Item_DataLink_Update = asm
5945 local float locked_1174;
5947 INDIRECT_S self, link, locked_1174;
5948 EQ_S locked_1174, "", locked_1174;
5949 IFNOT locked_1174, 4;
5950 ADDRESS self, _link, locked_1174;
5951 STOREP_ENT null_entity, locked_1174;
5953 INDIRECT_S self, link, locked_1174;
5954 INDIRECT_E self, _link, temp_4;
5955 INDIRECT_S temp_4, name, temp_4;
5956 NE_S locked_1174, temp_4, locked_1174;
5957 IFNOT locked_1174, 5;
5958 ADDRESS self, _link, locked_1174;
5959 INDIRECT_S self, link, parm0_x;
5961 STOREP_ENT return_x, locked_1174;
5965 void() Item_DataLink_Destroy = asm
5967 STORE_F self, parm0_x;
5968 STORE_F link, parm1_x;
5969 CALL2 String_EntityFree;
5970 STORE_F self, parm0_x;
5971 STORE_F value, parm1_x;
5972 CALL2 String_EntityFree;
5976 void() Item_DataLink_Init = asm
5980 ADDRESS self, flag, temp_3;
5981 INDIRECT_F self, flag, temp_4;
5982 BITOR temp_4, FLAG_HIDDEN, temp_4;
5983 STOREP_F temp_4, temp_3;
5984 STORE_F self, parm0_x;
5985 STORE_F link, parm1_x;
5986 CALL2 String_EntityZone;
5987 STORE_F self, parm0_x;
5988 STORE_F value, parm1_x;
5989 CALL2 String_EntityZone;
5990 CALL0 Item_DataLink_Update;
5991 ADDRESS self, _destroy, temp_3;
5992 STOREP_FNC Item_DataLink_Destroy, temp_3;
5996 void() Item_DataLink_Switch_Destroy = asm
5998 CALL0 Item_DataLink_Destroy;
5999 STORE_F self, parm0_x;
6000 STORE_F descList, parm1_x;
6001 CALL2 String_EntityFree;
6005 void() Item_DataLink_Switch_Init = asm
6008 CALL0 Item_DataLink_Value_Spawn;
6009 STORE_F self, parm0_x;
6010 STORE_F descList, parm1_x;
6011 CALL2 String_EntityZone;
6012 ADDRESS self, _destroy, temp_3;
6013 STOREP_FNC Item_DataLink_Switch_Destroy, temp_3;
6017 float(entity pDataLink, float pValue) DataLink_Switch_GetOrdinal = asm
6021 INDIRECT_F pDataLink, stepValue, temp_3;
6022 EQ_F temp_3, KEY_GAME, temp_3;
6025 INDIRECT_F pDataLink, minValue, temp_3;
6026 SUB_F pValue, temp_3, temp_3;
6027 INDIRECT_F pDataLink, stepValue, temp_4;
6028 DIV_F temp_3, temp_4, temp_3;
6033 void() Item_DataUser_Update = asm
6035 local float locked_1174;
6037 INDIRECT_S self, target, locked_1174;
6038 EQ_S locked_1174, "", locked_1174;
6039 IFNOT locked_1174, 4;
6040 ADDRESS self, _target, locked_1174;
6041 STOREP_ENT null_entity, locked_1174;
6043 INDIRECT_S self, target, locked_1174;
6044 INDIRECT_E self, _target, temp_4;
6045 INDIRECT_S temp_4, name, temp_4;
6046 NE_S locked_1174, temp_4, locked_1174;
6047 IFNOT locked_1174, 5;
6048 ADDRESS self, _target, locked_1174;
6049 INDIRECT_S self, target, parm0_x;
6051 STOREP_ENT return_x, locked_1174;
6055 void() Item_DataUser_Destroy = asm
6057 STORE_F self, parm0_x;
6058 STORE_F target, parm1_x;
6059 CALL2 String_EntityFree;
6063 void() Item_DataUser_Init = asm
6066 STORE_F self, parm0_x;
6067 STORE_F target, parm1_x;
6068 CALL2 String_EntityZone;
6069 CALL0 Item_DataUser_Update;
6070 ADDRESS self, _destroy, temp_3;
6071 STOREP_FNC Item_DataUser_Destroy, temp_3;
6075 void(float pEvent) Item_DataContainer_DataEvent = asm
6080 INDIRECT_E self, _child, lItem;
6081 NE_E lItem, null_entity, temp_3;
6083 STORE_F lItem, parm0_x;
6084 STORE_F pEvent, parm1_x;
6085 CALL2 Raise_DataEvent;
6086 INDIRECT_E lItem, _next, lItem;
6091 void() Item_DataContainer_Spawn = asm
6094 CALL0 Item_Container_Spawn;
6095 ADDRESS self, _dataEvent, temp_3;
6096 STOREP_FNC Item_DataContainer_DataEvent, temp_3;
6100 void() Item_Data_Container_Reinit = asm
6103 INDIRECT_S self, _syncValue, temp_3;
6104 STORE_F self, parm0_x;
6105 STORE_F value, parm1_x;
6106 STORE_F temp_3, parm2_x;
6107 CALL3 String_EntitySet;
6111 void(float pEvent) Item_Data_Container_DataEvent = asm
6115 INDIRECT_S self, _syncValue, temp_3;
6116 STORE_F self, parm0_x;
6117 STORE_F value, parm1_x;
6118 STORE_F temp_3, parm2_x;
6119 CALL3 String_EntitySet;
6121 INDIRECT_S self, value, temp_3;
6122 STORE_F self, parm0_x;
6123 STORE_F _syncValue, parm1_x;
6124 STORE_F temp_3, parm2_x;
6125 CALL3 String_EntitySet;
6127 INDIRECT_S self, defValue, temp_3;
6128 STORE_F self, parm0_x;
6129 STORE_F value, parm1_x;
6130 STORE_F temp_3, parm2_x;
6131 CALL3 String_EntitySet;
6132 INDIRECT_S self, defValue, temp_3;
6133 STORE_F self, parm0_x;
6134 STORE_F _syncValue, parm1_x;
6135 STORE_F temp_3, parm2_x;
6136 CALL3 String_EntitySet;
6139 EQ_F pEvent, ITEM_DATA_SEND, temp_3;
6141 EQ_F pEvent, ITEM_DATA_RESET, temp_3;
6146 void() Item_Data_Container_Spawn = asm
6149 CALL0 Item_Data_Init;
6150 ADDRESS self, _reinit, temp_3;
6151 STOREP_FNC Item_Data_Container_Reinit, temp_3;
6152 ADDRESS self, _dataEvent, temp_3;
6153 STOREP_FNC Item_Data_Container_DataEvent, temp_3;
6154 INDIRECT_S self, defValue, temp_3;
6155 STORE_F self, parm0_x;
6156 STORE_F _syncValue, parm1_x;
6157 STORE_F temp_3, parm2_x;
6158 CALL3 String_EntitySet;
6162 void () Item_Data_Cvar_Sync;
6163 void() Item_Data_Cvar_Sync = asm
6166 INDIRECT_S self, cvarName, parm0_x;
6168 STORE_F self, parm0_x;
6169 STORE_F _syncValue, parm1_x;
6170 STORE_F return_x, parm2_x;
6171 CALL3 String_EntitySet;
6172 INDIRECT_S self, _syncValue, temp_3;
6173 STORE_F self, parm0_x;
6174 STORE_F value, parm1_x;
6175 STORE_F temp_3, parm2_x;
6176 CALL3 String_EntitySet;
6180 void () Item_Data_Cvar_Send;
6181 void() Item_Data_Cvar_Send = asm
6185 INDIRECT_S self, cvarName, temp_3;
6186 INDIRECT_S self, value, temp_4;
6187 STORE_F temp_3, parm0_x;
6188 STORE_F temp_4, parm1_x;
6190 CALL0 Item_Data_Cvar_Sync;
6194 void () Item_Data_Cvar_Reset;
6195 void() Item_Data_Cvar_Reset = asm
6198 INDIRECT_S self, defValue, temp_3;
6199 STORE_F self, parm0_x;
6200 STORE_F value, parm1_x;
6201 STORE_F temp_3, parm2_x;
6202 CALL3 String_EntitySet;
6203 CALL0 Item_Data_Cvar_Send;
6207 void () Item_Data_Cvar_Test_Start;
6208 void() Item_Data_Cvar_Test_Start = asm
6212 INDIRECT_S self, cvarName, temp_3;
6213 INDIRECT_S self, value, temp_4;
6214 STORE_F temp_3, parm0_x;
6215 STORE_F temp_4, parm1_x;
6220 void () Item_Data_Cvar_Test_End;
6221 void() Item_Data_Cvar_Test_End = asm
6225 INDIRECT_S self, cvarName, temp_3;
6226 INDIRECT_S self, _syncValue, temp_4;
6227 STORE_F temp_3, parm0_x;
6228 STORE_F temp_4, parm1_x;
6233 void () Item_Data_Cvar_Save_ExecString;
6234 void() Item_Data_Cvar_Save_ExecString = asm
6238 INDIRECT_S self, cvarName, temp_3;
6239 INDIRECT_S self, value, temp_4;
6240 STORE_F "set "", parm0_x;
6241 STORE_F temp_3, parm1_x;
6242 STORE_F "" "", parm2_x;
6243 STORE_F temp_4, parm3_x;
6247 STORE_F Data_ExecString, parm0_x;
6248 STORE_F return_x, parm1_x;
6249 CALL2 String_Append;
6250 STORE_S return_x, Data_ExecString;
6254 void(float pEvent) Item_Data_Cvar_DataEvent = asm
6258 CALL0 Item_Data_Cvar_Sync;
6260 CALL0 Item_Data_Cvar_Send;
6262 CALL0 Item_Data_Cvar_Reset;
6264 CALL0 Item_Data_Cvar_Test_Start;
6266 CALL0 Item_Data_Cvar_Test_End;
6268 CALL0 Item_Data_Cvar_Save_ExecString;
6271 EQ_F pEvent, ITEM_DATA_SEND, temp_3;
6273 EQ_F pEvent, ITEM_DATA_RESET, temp_3;
6275 EQ_F pEvent, ITEM_DATA_TEST_START, temp_3;
6277 EQ_F pEvent, ITEM_DATA_TEST_END, temp_3;
6279 EQ_F pEvent, ITEM_DATA_SAVE_EXECSTRING, temp_3;
6284 void () Item_Data_Cvar_Destroy;
6285 void() Item_Data_Cvar_Destroy = asm
6287 CALL0 Item_Data_Destroy;
6288 STORE_F self, parm0_x;
6289 STORE_F cvarName, parm1_x;
6290 CALL2 String_EntityFree;
6294 void() Item_Data_Cvar_Spawn = asm
6298 STORE_F self, parm0_x;
6299 STORE_F cvarName, parm1_x;
6300 CALL2 String_EntityZone;
6301 CALL0 Item_Data_Init;
6302 ADDRESS self, flag, temp_3;
6303 INDIRECT_F self, flag, temp_4;
6304 BITOR temp_4, FLAG_HIDDEN, temp_4;
6305 STOREP_F temp_4, temp_3;
6306 ADDRESS self, _dataEvent, temp_3;
6307 STOREP_FNC Item_Data_Cvar_DataEvent, temp_3;
6308 ADDRESS self, _reinit, temp_3;
6309 STOREP_FNC Item_Data_Cvar_Sync, temp_3;
6310 ADDRESS self, _destroy, temp_3;
6311 STOREP_FNC Item_Data_Cvar_Destroy, temp_3;
6315 void() Item_Data_CvarCreateSave_Spawn = asm
6319 CALL0 Item_Data_Cvar_Spawn;
6320 INDIRECT_S self, cvarName, temp_3;
6321 INDIRECT_S self, defValue, temp_4;
6322 STORE_F temp_3, parm0_x;
6323 STORE_F temp_4, parm1_x;
6324 STORE_F FILE_APPEND, parm2_x;
6329 void (float) Item_DataLink_Text_DataEvent;
6330 void(float pEvent) Item_DataLink_Text_DataEvent = asm
6334 CALL0 Item_DataLink_Update;
6335 EQ_F pEvent, ITEM_DATALINK_SET, temp_3;
6337 INDIRECT_F self, maxValue, temp_3;
6338 GE temp_3, KEY_GAME, temp_3;
6340 INDIRECT_S self, value, temp_3;
6341 INDIRECT_F self, maxValue, temp_4;
6342 STORE_F temp_3, parm0_x;
6343 STORE_F KEY_GAME, parm1_x;
6344 STORE_F temp_4, parm2_x;
6346 STORE_F self, parm0_x;
6347 STORE_F value, parm1_x;
6348 STORE_F return_x, parm2_x;
6349 CALL3 String_EntitySet;
6350 INDIRECT_E self, _link, temp_3;
6352 INDIRECT_E self, _link, temp_3;
6353 INDIRECT_S self, value, temp_4;
6354 STORE_F temp_3, parm0_x;
6355 STORE_F value, parm1_x;
6356 STORE_F temp_4, parm2_x;
6357 CALL3 String_EntitySet;
6358 INDIRECT_E self, _link, parm0_x;
6359 STORE_F ITEM_DATALINK_SET, parm1_x;
6360 CALL2 Raise_DataEvent;
6362 INDIRECT_E self, _link, temp_3;
6366 EQ_F pEvent, ITEM_DATALINK_GET, temp_3;
6368 INDIRECT_E self, _link, temp_3;
6369 INDIRECT_S temp_3, value, temp_3;
6370 STORE_F self, parm0_x;
6371 STORE_F value, parm1_x;
6372 STORE_F temp_3, parm2_x;
6373 CALL3 String_EntitySet;
6374 INDIRECT_F self, maxValue, temp_3;
6375 GE temp_3, KEY_GAME, temp_3;
6377 INDIRECT_E self, _link, parm0_x;
6378 STORE_F ITEM_DATALINK_GET, parm1_x;
6379 CALL2 Raise_DataEvent;
6380 INDIRECT_S self, value, temp_3;
6381 INDIRECT_F self, maxValue, temp_4;
6382 STORE_F temp_3, parm0_x;
6383 STORE_F KEY_GAME, parm1_x;
6384 STORE_F temp_4, parm2_x;
6386 STORE_F self, parm0_x;
6387 STORE_F value, parm1_x;
6388 STORE_F return_x, parm2_x;
6389 CALL3 String_EntitySet;
6391 INDIRECT_E self, _link, parm0_x;
6392 STORE_F pEvent, parm1_x;
6393 CALL2 Raise_DataEvent;
6397 void () Item_DataLink_Text_Spawn;
6398 void() Item_DataLink_Text_Spawn = asm
6401 CALL0 Item_DataLink_Init;
6402 ADDRESS self, _dataEvent, temp_3;
6403 STOREP_FNC Item_DataLink_Text_DataEvent, temp_3;
6407 void() Item_DataLink_Value_Clamp = asm
6409 local float locked_285;
6410 local float locked_1020;
6411 local float locked_1174;
6414 INDIRECT_F self, _realValue, locked_1174;
6415 INDIRECT_F self, maxValue, locked_1020;
6416 GT locked_1174, locked_1020, locked_1174;
6417 IFNOT locked_1174, 4;
6418 INDIRECT_F self, maxValue, locked_1020;
6419 INDIRECT_F self, minValue, locked_285;
6420 GT locked_1020, locked_285, locked_1020;
6421 AND locked_1174, locked_1020, locked_1174;
6422 IFNOT locked_1174, 5;
6423 ADDRESS self, _realValue, locked_1174;
6424 INDIRECT_F self, maxValue, locked_1020;
6425 STOREP_F locked_1020, locked_1174;
6427 INDIRECT_F self, _realValue, locked_1174;
6428 INDIRECT_F self, minValue, locked_1020;
6429 LT locked_1174, locked_1020, locked_1174;
6430 IFNOT locked_1174, 5;
6431 ADDRESS self, _realValue, locked_1174;
6432 INDIRECT_F self, minValue, locked_1020;
6433 STOREP_F locked_1020, locked_1174;
6435 ADDRESS self, _realValue, locked_1174;
6436 INDIRECT_F self, minValue, locked_1020;
6437 INDIRECT_F self, stepValue, locked_285;
6438 INDIRECT_F self, _realValue, temp_1;
6439 INDIRECT_F self, minValue, temp_0;
6440 SUB_F temp_1, temp_0, temp_0;
6441 INDIRECT_F self, stepValue, temp_1;
6442 DIV_F temp_0, temp_1, parm0_x;
6444 MUL_F locked_285, return_x, temp_0;
6445 ADD_F locked_1020, temp_0, temp_0;
6446 STOREP_F temp_0, locked_1174;
6450 string () Item_DataLink_ClampedValue;
6451 string() Item_DataLink_ClampedValue = asm
6453 local float locked_1586;
6454 local float lClampedStep;
6457 INDIRECT_F self, stepValue, locked_1586;
6458 INDIRECT_F self, stepValue, parm0_x;
6460 EQ_F locked_1586, return_x, locked_1586;
6461 IFNOT locked_1586, 4;
6462 INDIRECT_F self, _realValue, parm0_x;
6465 INDIRECT_F self, _realValue, parm0_x;
6467 STORE_F return_x, parm0_x;
6469 STORE_F return_x, parm0_x;
6471 STORE_F return_x, lLen;
6472 INDIRECT_F self, stepValue, locked_1586;
6473 INDIRECT_F self, stepValue, parm0_x;
6475 SUB_F locked_1586, return_x, locked_1586;
6476 DIV_F FILE_APPEND, locked_1586, parm0_x;
6478 STORE_F return_x, lClampedStep;
6479 STORE_F lClampedStep, parm0_x;
6481 STORE_F return_x, parm0_x;
6483 ADD_F lLen, return_x, lLen;
6484 INDIRECT_F self, _realValue, parm0_x;
6486 STORE_F return_x, parm0_x;
6487 STORE_F KEY_GAME, parm1_x;
6488 STORE_F lLen, parm2_x;
6494 void (float) Item_DataLink_Value_DataEvent;
6495 void(float pEvent) Item_DataLink_Value_DataEvent = asm
6497 local float locked_1586;
6499 CALL0 Item_DataLink_Update;
6500 EQ_F pEvent, ITEM_DATALINK_SET, locked_1586;
6501 IFNOT locked_1586, 19;
6502 CALL0 Item_DataLink_Value_Clamp;
6503 INDIRECT_E self, _link, locked_1586;
6504 IFNOT locked_1586, 15;
6505 INDIRECT_E self, _link, locked_1586;
6506 ADDRESS locked_1586, _realValue, locked_1586;
6507 INDIRECT_F self, _realValue, temp_1;
6508 STOREP_F temp_1, locked_1586;
6509 INDIRECT_E self, _link, locked_1586;
6510 INDIRECT_F self, _realValue, parm0_x;
6512 STORE_F locked_1586, parm0_x;
6513 STORE_F value, parm1_x;
6514 STORE_F return_x, parm2_x;
6515 CALL3 String_EntitySet;
6516 INDIRECT_E self, _link, parm0_x;
6517 STORE_F ITEM_DATALINK_SET, parm1_x;
6518 CALL2 Raise_DataEvent;
6520 INDIRECT_E self, _link, locked_1586;
6524 EQ_F pEvent, ITEM_DATALINK_GET, locked_1586;
6525 IFNOT locked_1586, 16;
6526 INDIRECT_E self, _link, parm0_x;
6527 STORE_F ITEM_DATALINK_GET, parm1_x;
6528 CALL2 Raise_DataEvent;
6529 ADDRESS self, _realValue, locked_1586;
6530 INDIRECT_E self, _link, temp_1;
6531 INDIRECT_S temp_1, value, parm0_x;
6533 STOREP_F return_x, locked_1586;
6534 CALL0 Item_DataLink_ClampedValue;
6535 STORE_F self, parm0_x;
6536 STORE_F value, parm1_x;
6537 STORE_F return_x, parm2_x;
6538 CALL3 String_EntitySet;
6539 CALL0 Item_DataLink_Value_Clamp;
6541 INDIRECT_E self, _link, parm0_x;
6542 STORE_F pEvent, parm1_x;
6543 CALL2 Raise_DataEvent;
6547 void() Item_DataLink_Value_Spawn = asm
6550 CALL0 Item_DataLink_Init;
6551 INDIRECT_F self, stepValue, temp_0;
6552 EQ_F temp_0, KEY_GAME, temp_0;
6554 ADDRESS self, stepValue, temp_0;
6555 STOREP_F FILE_APPEND, temp_0;
6556 ADDRESS self, _dataEvent, temp_0;
6557 STOREP_FNC Item_DataLink_Value_DataEvent, temp_0;
6561 void(float pEvent) Item_DataLink_TextSwitch_DataEvent = asm
6563 local float locked_1586;
6568 CALL0 Item_DataLink_Update;
6569 EQ_F pEvent, ITEM_DATALINK_SET, locked_1586;
6570 IFNOT locked_1586, 20;
6571 CALL0 Item_DataLink_Value_Clamp;
6572 INDIRECT_E self, _link, locked_1586;
6573 IFNOT locked_1586, 16;
6574 INDIRECT_E self, _link, locked_1586;
6575 INDIRECT_S self, valueList, temp_1;
6576 INDIRECT_F self, _realValue, temp_5;
6577 STORE_F temp_1, parm0_x;
6578 STORE_F temp_5, parm1_x;
6579 CALL2 Util_GetAltStringItem;
6580 STORE_F return_x, parm0_x;
6581 CALL1 String_Normal;
6582 STORE_F locked_1586, parm0_x;
6583 STORE_F value, parm1_x;
6584 STORE_F return_x, parm2_x;
6585 CALL3 String_EntitySet;
6586 INDIRECT_E self, _link, parm0_x;
6587 STORE_F ITEM_DATALINK_SET, parm1_x;
6588 CALL2 Raise_DataEvent;
6590 INDIRECT_E self, _link, locked_1586;
6594 EQ_F pEvent, ITEM_DATALINK_GET, locked_1586;
6595 IFNOT locked_1586, 67;
6596 INDIRECT_E self, _link, parm0_x;
6597 STORE_F ITEM_DATALINK_GET, parm1_x;
6598 CALL2 Raise_DataEvent;
6599 INDIRECT_S self, valueList, locked_1586;
6600 INDIRECT_F self, _realValue, temp_1;
6601 STORE_F locked_1586, parm0_x;
6602 STORE_F temp_1, parm1_x;
6603 CALL2 Util_GetAltStringItem;
6604 STORE_F return_x, parm0_x;
6605 CALL1 String_Normal;
6606 INDIRECT_E self, _link, locked_1586;
6607 INDIRECT_S locked_1586, value, locked_1586;
6608 EQ_S return_x, locked_1586, locked_1586;
6609 IFNOT locked_1586, 13;
6610 INDIRECT_S self, descList, locked_1586;
6611 INDIRECT_F self, _realValue, temp_1;
6612 STORE_F locked_1586, parm0_x;
6613 STORE_F temp_1, parm1_x;
6614 CALL2 Util_GetAltStringItem;
6615 STORE_F return_x, parm0_x;
6616 CALL1 String_Normal;
6617 STORE_F self, parm0_x;
6618 STORE_F value, parm1_x;
6619 STORE_F return_x, parm2_x;
6620 CALL3 String_EntitySet;
6622 INDIRECT_S self, valueList, parm0_x;
6623 CALL1 Util_GetAltStringCount;
6624 STORE_F return_x, lCount;
6625 STORE_F KEY_GAME, lPos;
6626 LT lPos, lCount, locked_1586;
6627 IFNOT locked_1586, 13;
6628 INDIRECT_S self, valueList, parm0_x;
6629 STORE_F lPos, parm1_x;
6630 CALL2 Util_GetAltStringItem;
6631 STORE_F return_x, parm0_x;
6632 CALL1 String_Normal;
6633 INDIRECT_E self, _link, locked_1586;
6634 INDIRECT_S locked_1586, value, locked_1586;
6635 EQ_S return_x, locked_1586, locked_1586;
6636 IFNOT locked_1586, 2;
6638 ADD_F lPos, FILE_APPEND, lPos;
6640 GT lPos, lCount, locked_1586;
6641 IFNOT locked_1586, 9;
6642 INDIRECT_S self, descList, parm0_x;
6643 CALL1 Util_GetAltStringCount;
6644 GT return_x, lCount, locked_1586;
6645 IFNOT locked_1586, 4;
6646 STORE_F lPos, locked_1586;
6647 ADD_F lPos, FILE_APPEND, lPos;
6649 STORE_F KEY_GAME, lPos;
6650 ADDRESS self, _realValue, locked_1586;
6651 STOREP_F lPos, locked_1586;
6652 INDIRECT_S self, descList, parm0_x;
6653 STORE_F lPos, parm1_x;
6654 CALL2 Util_GetAltStringItem;
6655 STORE_F return_x, parm0_x;
6656 CALL1 String_Normal;
6657 STORE_F self, parm0_x;
6658 STORE_F value, parm1_x;
6659 STORE_F return_x, parm2_x;
6660 CALL3 String_EntitySet;
6662 INDIRECT_E self, _link, parm0_x;
6663 STORE_F pEvent, parm1_x;
6664 CALL2 Raise_DataEvent;
6668 void() Item_DataLink_TextSwitch_Destroy = asm
6670 STORE_F self, parm0_x;
6671 STORE_F valueList, parm1_x;
6672 CALL2 String_EntityFree;
6673 CALL0 Item_DataLink_Switch_Destroy;
6677 void() Item_DataLink_TextSwitch_Spawn = asm
6679 local float locked_1586;
6681 CALL0 Item_DataLink_Switch_Init;
6682 STORE_F self, parm0_x;
6683 STORE_F valueList, parm1_x;
6684 CALL2 String_EntityZone;
6685 ADDRESS self, minValue, locked_1586;
6686 STOREP_F KEY_GAME, locked_1586;
6687 INDIRECT_F self, maxValue, locked_1586;
6688 EQ_F locked_1586, KEY_GAME, locked_1586;
6689 IFNOT locked_1586, 6;
6690 ADDRESS self, maxValue, locked_1586;
6691 INDIRECT_S self, valueList, parm0_x;
6692 CALL1 Util_GetAltStringCount;
6693 SUB_F return_x, FILE_APPEND, temp_1;
6694 STOREP_F temp_1, locked_1586;
6695 INDIRECT_F self, maxValue, locked_1586;
6696 EQ_F locked_1586, KEY_GAME, locked_1586;
6697 IFNOT locked_1586, 4;
6698 ADDRESS self, stepValue, locked_1586;
6699 STOREP_F KEY_GAME, locked_1586;
6701 ADDRESS self, stepValue, locked_1586;
6702 STOREP_F FILE_APPEND, locked_1586;
6703 ADDRESS self, _destroy, locked_1586;
6704 STOREP_FNC Item_DataLink_TextSwitch_Destroy, locked_1586;
6705 ADDRESS self, _dataEvent, locked_1586;
6706 STOREP_FNC Item_DataLink_TextSwitch_DataEvent, locked_1586;
6710 void (float) Item_DataLink_ValueSwitch_DataEvent;
6711 void(float pEvent) Item_DataLink_ValueSwitch_DataEvent = asm
6713 local float locked_1586;
6716 CALL0 Item_DataLink_Update;
6717 EQ_F pEvent, ITEM_DATALINK_SET, locked_1586;
6718 IFNOT locked_1586, 19;
6719 CALL0 Item_DataLink_Value_Clamp;
6720 INDIRECT_E self, _link, locked_1586;
6721 IFNOT locked_1586, 15;
6722 INDIRECT_E self, _link, locked_1586;
6723 ADDRESS locked_1586, _realValue, locked_1586;
6724 INDIRECT_F self, _realValue, temp_1;
6725 STOREP_F temp_1, locked_1586;
6726 INDIRECT_E self, _link, locked_1586;
6727 INDIRECT_F self, _realValue, parm0_x;
6729 STORE_F locked_1586, parm0_x;
6730 STORE_F value, parm1_x;
6731 STORE_F return_x, parm2_x;
6732 CALL3 String_EntitySet;
6733 INDIRECT_E self, _link, parm0_x;
6734 STORE_F ITEM_DATALINK_SET, parm1_x;
6735 CALL2 Raise_DataEvent;
6737 INDIRECT_E self, _link, locked_1586;
6741 EQ_F pEvent, ITEM_DATALINK_GET, locked_1586;
6742 IFNOT locked_1586, 27;
6743 INDIRECT_E self, _link, parm0_x;
6744 STORE_F ITEM_DATALINK_GET, parm1_x;
6745 CALL2 Raise_DataEvent;
6746 ADDRESS self, _realValue, locked_1586;
6747 INDIRECT_E self, _link, temp_1;
6748 INDIRECT_S temp_1, value, parm0_x;
6750 STOREP_F return_x, locked_1586;
6751 CALL0 Item_DataLink_Value_Clamp;
6752 INDIRECT_F self, _realValue, locked_1586;
6753 INDIRECT_F self, minValue, temp_1;
6754 SUB_F locked_1586, temp_1, locked_1586;
6755 INDIRECT_F self, stepValue, temp_1;
6756 DIV_F locked_1586, temp_1, parm0_x;
6758 STORE_F return_x, lPos;
6759 INDIRECT_S self, descList, parm0_x;
6760 STORE_F lPos, parm1_x;
6761 CALL2 Util_GetAltStringItem;
6762 STORE_F return_x, parm0_x;
6763 CALL1 String_Normal;
6764 STORE_F self, parm0_x;
6765 STORE_F value, parm1_x;
6766 STORE_F return_x, parm2_x;
6767 CALL3 String_EntitySet;
6769 INDIRECT_E self, _link, parm0_x;
6770 STORE_F pEvent, parm1_x;
6771 CALL2 Raise_DataEvent;
6775 void() Item_DataLink_ValueSwitch_Spawn = asm
6777 local float locked_1585;
6778 local float locked_1586;
6782 CALL0 Item_DataLink_Switch_Init;
6783 INDIRECT_F self, maxValue, locked_1586;
6784 EQ_F locked_1586, KEY_GAME, locked_1586;
6785 IFNOT locked_1586, 11;
6786 ADDRESS self, maxValue, locked_1586;
6787 INDIRECT_F self, minValue, locked_1585;
6788 INDIRECT_S self, descList, parm0_x;
6789 CALL1 Util_GetAltStringCount;
6790 SUB_F return_x, FILE_APPEND, temp_5;
6791 INDIRECT_F self, stepValue, temp_6;
6792 MUL_F temp_5, temp_6, temp_5;
6793 ADD_F locked_1585, temp_5, locked_1585;
6794 STOREP_F locked_1585, locked_1586;
6796 INDIRECT_S self, descList, parm0_x;
6797 CALL1 Util_GetAltStringCount;
6798 STORE_F return_x, lCount;
6800 ADDRESS self, stepValue, locked_1586;
6801 INDIRECT_F self, maxValue, locked_1585;
6802 INDIRECT_F self, minValue, temp_5;
6803 SUB_F locked_1585, temp_5, locked_1585;
6804 SUB_F lCount, FILE_APPEND, temp_5;
6805 DIV_F locked_1585, temp_5, locked_1585;
6806 STOREP_F locked_1585, locked_1586;
6808 ADDRESS self, stepValue, locked_1586;
6809 STOREP_F KEY_GAME, locked_1586;
6810 ADDRESS self, _dataEvent, locked_1586;
6811 STOREP_FNC Item_DataLink_ValueSwitch_DataEvent, locked_1586;
6812 ADDRESS self, _destroy, locked_1586;
6813 STOREP_FNC Item_DataLink_Switch_Destroy, locked_1586;
6817 void (float) Item_DataLink_FastResync_DataEvent;
6818 void(float pEvent) Item_DataLink_FastResync_DataEvent = asm
6822 EQ_F pEvent, ITEM_DATALINK_GET, temp_0;
6824 INDIRECT_F self, _presstime, temp_0;
6825 NE_F temp_0, Timer_Time, temp_0;
6827 INDIRECT_E self, _link, parm0_x;
6828 STORE_F ITEM_DATA_SYNC, parm1_x;
6829 CALL2 Raise_DataEvent;
6830 ADDRESS self, _presstime, temp_0;
6831 STOREP_F Timer_Time, temp_0;
6832 INDIRECT_E self, _link, parm0_x;
6833 STORE_F ITEM_DATALINK_GET, parm1_x;
6834 CALL2 Raise_DataEvent;
6835 INDIRECT_E self, _link, temp_0;
6836 INDIRECT_S temp_0, value, temp_0;
6837 STORE_F self, parm0_x;
6838 STORE_F value, parm1_x;
6839 STORE_F temp_0, parm2_x;
6840 CALL3 String_EntitySet;
6842 EQ_F pEvent, ITEM_DATALINK_SET, temp_0;
6844 INDIRECT_E self, _link, temp_0;
6846 INDIRECT_E self, _link, temp_0;
6847 INDIRECT_S self, value, temp_1;
6848 STORE_F temp_0, parm0_x;
6849 STORE_F value, parm1_x;
6850 STORE_F temp_1, parm2_x;
6851 CALL3 String_EntitySet;
6852 INDIRECT_E self, _link, parm0_x;
6853 STORE_F ITEM_DATALINK_SET, parm1_x;
6854 CALL2 Raise_DataEvent;
6856 INDIRECT_E self, _link, parm0_x;
6857 STORE_F pEvent, parm1_x;
6858 CALL2 Raise_DataEvent;
6862 void() Item_DataLink_FastResync_Spawn = asm
6866 CALL0 Item_DataLink_Init;
6867 ADDRESS self, _presstime, temp_0;
6868 SUB_F Timer_Time, FILE_APPEND, temp_1;
6869 STOREP_F temp_1, temp_0;
6870 ADDRESS self, _dataEvent, temp_0;
6871 STOREP_FNC Item_DataLink_FastResync_DataEvent, temp_0;
6875 void (float) Item_DataLink_TextValue_DataEvent;
6876 void(float pEvent) Item_DataLink_TextValue_DataEvent = asm
6878 local float locked_1586;
6880 CALL0 Item_DataLink_Update;
6881 EQ_F pEvent, ITEM_DATALINK_SET, locked_1586;
6882 IFNOT locked_1586, 14;
6883 INDIRECT_E self, _link, locked_1586;
6884 ADDRESS locked_1586, _realValue, locked_1586;
6885 INDIRECT_S self, value, parm0_x;
6887 STOREP_F return_x, locked_1586;
6888 INDIRECT_E self, _link, parm0_x;
6889 STORE_F ITEM_DATALINK_SET, parm1_x;
6890 CALL2 Raise_DataEvent;
6891 ADDRESS self, _realValue, locked_1586;
6892 INDIRECT_E self, _link, temp_1;
6893 INDIRECT_F temp_1, _realValue, temp_1;
6894 STOREP_F temp_1, locked_1586;
6896 INDIRECT_E self, _link, locked_1586;
6900 EQ_F pEvent, ITEM_DATALINK_GET, locked_1586;
6901 IFNOT locked_1586, 20;
6902 INDIRECT_E self, _link, parm0_x;
6903 STORE_F ITEM_DATALINK_GET, parm1_x;
6904 CALL2 Raise_DataEvent;
6905 INDIRECT_E self, _link, locked_1586;
6906 INDIRECT_F locked_1586, _realValue, locked_1586;
6907 INDIRECT_F self, _realValue, temp_1;
6908 NE_F locked_1586, temp_1, locked_1586;
6909 IFNOT locked_1586, 11;
6910 ADDRESS self, _realValue, locked_1586;
6911 INDIRECT_E self, _link, temp_1;
6912 INDIRECT_F temp_1, _realValue, temp_1;
6913 STOREP_F temp_1, locked_1586;
6914 INDIRECT_E self, _link, locked_1586;
6915 INDIRECT_S locked_1586, value, locked_1586;
6916 STORE_F self, parm0_x;
6917 STORE_F value, parm1_x;
6918 STORE_F locked_1586, parm2_x;
6919 CALL3 String_EntitySet;
6921 INDIRECT_E self, _link, parm0_x;
6922 STORE_F pEvent, parm1_x;
6923 CALL2 Raise_DataEvent;
6924 ADDRESS self, _realValue, locked_1586;
6925 INDIRECT_E self, _link, temp_1;
6926 INDIRECT_F temp_1, _realValue, temp_1;
6927 STOREP_F temp_1, locked_1586;
6928 INDIRECT_E self, _link, locked_1586;
6929 INDIRECT_S locked_1586, value, locked_1586;
6930 STORE_F self, parm0_x;
6931 STORE_F value, parm1_x;
6932 STORE_F locked_1586, parm2_x;
6933 CALL3 String_EntitySet;
6937 void() Item_DataLink_TextValue_Spawn = asm
6941 CALL0 Item_DataLink_Init;
6942 ADDRESS self, _dataEvent, temp_0;
6943 STOREP_FNC Item_DataLink_TextValue_DataEvent, temp_0;
6944 ADDRESS self, _realValue, temp_0;
6945 INDIRECT_E self, _link, temp_1;
6946 INDIRECT_F temp_1, minValue, temp_1;
6947 SUB_F temp_1, FILE_APPEND, temp_1;
6948 STOREP_F temp_1, temp_0;
6952 float () _IDLTT_ConvertTime;
6953 float() _IDLTT_ConvertTime = asm
6955 local float lCounter;
6957 local float lCurrent;
6960 STORE_F KEY_GAME, lTotal;
6961 INDIRECT_S self, value, parm0_x;
6963 STORE_F return_x, lCount;
6964 STORE_F KEY_GAME, lCounter;
6965 LT lCounter, lCount, temp_0;
6967 STORE_F lCounter, parm0_x;
6969 STORE_F return_x, parm0_x;
6971 STORE_F return_x, lCurrent;
6972 MUL_F lTotal, 60.000000, temp_0;
6973 ADD_F temp_0, lCurrent, lTotal;
6974 ADD_F lCounter, FILE_APPEND, lCounter;
6975 STORE_F lCounter, parm0_x;
6977 NE_S return_x, ":", temp_0;
6980 ADD_F lCounter, FILE_APPEND, lCounter;
6982 STORE_F lTotal, parm0_x;
6988 string () _IDLTT_MakeString;
6989 string() _IDLTT_MakeString = asm
6991 local float lCurrent;
6993 local string lString;
6995 INDIRECT_F self, _realValue, parm0_x;
6997 STORE_F return_x, lTotal;
6998 STORE_S "", lString;
6999 STORE_F lTotal, parm0_x;
7000 STORE_F 60.000000, parm1_x;
7002 STORE_F return_x, lCurrent;
7003 EQ_S lString, "", temp_0;
7005 STORE_F lCurrent, parm0_x;
7007 STORE_F return_x, parm0_x;
7009 STORE_S return_x, lString;
7011 STORE_F lCurrent, parm0_x;
7013 STORE_F return_x, parm0_x;
7014 STORE_F ":", parm1_x;
7015 STORE_F lString, parm2_x;
7017 STORE_F lString, parm0_x;
7018 STORE_F return_x, parm1_x;
7020 STORE_S return_x, lString;
7021 DIV_F lTotal, 60.000000, parm0_x;
7023 STORE_F return_x, lTotal;
7029 void (float) Item_DataLink_TextTime_DataEvent;
7030 void(float pEvent) Item_DataLink_TextTime_DataEvent = asm
7032 local float locked_1586;
7034 CALL0 Item_DataLink_Update;
7035 EQ_F pEvent, ITEM_DATALINK_SET, locked_1586;
7036 IFNOT locked_1586, 13;
7037 INDIRECT_E self, _link, locked_1586;
7038 ADDRESS locked_1586, _realValue, locked_1586;
7039 CALL0 _IDLTT_ConvertTime;
7040 STOREP_F return_x, locked_1586;
7041 INDIRECT_E self, _link, parm0_x;
7042 STORE_F ITEM_DATALINK_SET, parm1_x;
7043 CALL2 Raise_DataEvent;
7044 ADDRESS self, _realValue, locked_1586;
7045 INDIRECT_E self, _link, temp_1;
7046 INDIRECT_F temp_1, _realValue, temp_1;
7047 STOREP_F temp_1, locked_1586;
7049 INDIRECT_E self, _link, locked_1586;
7053 EQ_F pEvent, ITEM_DATALINK_GET, locked_1586;
7054 IFNOT locked_1586, 21;
7055 INDIRECT_E self, _link, parm0_x;
7056 STORE_F ITEM_DATALINK_GET, parm1_x;
7057 CALL2 Raise_DataEvent;
7058 INDIRECT_E self, _link, locked_1586;
7059 INDIRECT_F locked_1586, _realValue, locked_1586;
7060 INDIRECT_F self, _realValue, temp_1;
7061 NE_F locked_1586, temp_1, locked_1586;
7062 IFNOT locked_1586, 12;
7063 ADDRESS self, _realValue, locked_1586;
7064 INDIRECT_E self, _link, temp_1;
7065 INDIRECT_F temp_1, _realValue, temp_1;
7066 STOREP_F temp_1, locked_1586;
7067 CALL0 _IDLTT_MakeString;
7068 STORE_F return_x, parm0_x;
7069 CALL1 String_Normal;
7070 STORE_F self, parm0_x;
7071 STORE_F value, parm1_x;
7072 STORE_F return_x, parm2_x;
7073 CALL3 String_EntitySet;
7075 INDIRECT_E self, _link, parm0_x;
7076 STORE_F pEvent, parm1_x;
7077 CALL2 Raise_DataEvent;
7078 ADDRESS self, _realValue, locked_1586;
7079 INDIRECT_E self, _link, temp_1;
7080 INDIRECT_F temp_1, _realValue, temp_1;
7081 STOREP_F temp_1, locked_1586;
7082 CALL0 _IDLTT_MakeString;
7083 STORE_F return_x, parm0_x;
7084 CALL1 String_Normal;
7085 STORE_F self, parm0_x;
7086 STORE_F value, parm1_x;
7087 STORE_F return_x, parm2_x;
7088 CALL3 String_EntitySet;
7092 void() Item_DataLink_TextTime_Spawn = asm
7096 CALL0 Item_DataLink_Init;
7097 ADDRESS self, _dataEvent, temp_0;
7098 STOREP_FNC Item_DataLink_TextTime_DataEvent, temp_0;
7099 ADDRESS self, _realValue, temp_0;
7100 INDIRECT_E self, _link, temp_1;
7101 INDIRECT_F temp_1, minValue, temp_1;
7102 SUB_F temp_1, FILE_APPEND, temp_1;
7103 STOREP_F temp_1, temp_0;
7107 void (float) Item_DataLink_AltString_DataEvent;
7108 void(float pEvent) Item_DataLink_AltString_DataEvent = asm
7110 local float locked_1586;
7114 CALL0 Item_DataLink_Update;
7115 INDIRECT_E self, _link, locked_1586;
7118 EQ_F pEvent, ITEM_DATALINK_SET, locked_1586;
7119 IFNOT locked_1586, 16;
7120 INDIRECT_E self, _link, locked_1586;
7121 ADDRESS locked_1586, value, locked_1586;
7122 INDIRECT_E self, _link, temp_1;
7123 INDIRECT_S temp_1, value, temp_1;
7124 INDIRECT_F self, stepValue, temp_5;
7125 INDIRECT_S self, value, temp_6;
7126 STORE_F temp_1, parm0_x;
7127 STORE_F temp_5, parm1_x;
7128 STORE_F temp_6, parm2_x;
7129 CALL3 Util_SetAltStringItem;
7130 STOREP_S return_x, locked_1586;
7131 INDIRECT_E self, _link, parm0_x;
7132 STORE_F ITEM_DATALINK_SET, parm1_x;
7133 CALL2 Raise_DataEvent;
7135 EQ_F pEvent, ITEM_DATALINK_GET, locked_1586;
7136 IFNOT locked_1586, 17;
7137 INDIRECT_E self, _link, parm0_x;
7138 STORE_F ITEM_DATALINK_GET, parm1_x;
7139 CALL2 Raise_DataEvent;
7140 INDIRECT_E self, _link, locked_1586;
7141 INDIRECT_S locked_1586, value, locked_1586;
7142 INDIRECT_F self, stepValue, temp_1;
7143 STORE_F locked_1586, parm0_x;
7144 STORE_F temp_1, parm1_x;
7145 CALL2 Util_GetAltStringItem;
7146 STORE_F return_x, parm0_x;
7147 CALL1 String_Normal;
7148 STORE_F self, parm0_x;
7149 STORE_F value, parm1_x;
7150 STORE_F return_x, parm2_x;
7151 CALL3 String_EntitySet;
7153 INDIRECT_E self, _link, parm0_x;
7154 STORE_F pEvent, parm1_x;
7155 CALL2 Raise_DataEvent;
7159 void() Item_DataLink_AltString_Spawn = asm
7162 CALL0 Item_DataLink_Init;
7163 ADDRESS self, _dataEvent, temp_0;
7164 STOREP_FNC Item_DataLink_AltString_DataEvent, temp_0;
7168 void (float) Item_DataLink_Router_DataEvent;
7169 void(float pEvent) Item_DataLink_Router_DataEvent = asm
7171 local entity lChild;
7175 INDIRECT_E self, _child, lChild;
7177 ADDRESS lChild, _realValue, temp_0;
7178 INDIRECT_F self, _realValue, temp_1;
7179 STOREP_F temp_1, temp_0;
7180 STORE_F lChild, parm0_x;
7181 STORE_F ITEM_DATALINK_SET, parm1_x;
7182 CALL2 Raise_DataEvent;
7183 INDIRECT_E lChild, _next, lChild;
7185 INDIRECT_E self, _child, temp_0;
7187 INDIRECT_E self, _child, parm0_x;
7188 STORE_F ITEM_DATALINK_GET, parm1_x;
7189 CALL2 Raise_DataEvent;
7190 ADDRESS self, _realValue, temp_0;
7191 INDIRECT_E self, _child, temp_1;
7192 INDIRECT_F temp_1, _realValue, temp_1;
7193 STOREP_F temp_1, temp_0;
7195 INDIRECT_E self, _child, lChild;
7197 STORE_F lChild, parm0_x;
7198 STORE_F pEvent, parm1_x;
7199 CALL2 Raise_DataEvent;
7200 INDIRECT_E lChild, _next, lChild;
7203 EQ_F pEvent, ITEM_DATALINK_SET, temp_0;
7205 EQ_F pEvent, ITEM_DATALINK_GET, temp_0;
7211 void() Item_DataLink_Router_Spawn = asm
7214 CALL0 Item_DataLink_Init;
7215 ADDRESS self, _dataEvent, temp_0;
7216 STOREP_FNC Item_DataLink_Router_DataEvent, temp_0;
7220 float(float pKey, float pAscii) Item_Window_Key = asm
7222 STORE_F pKey, parm0_x;
7223 STORE_F pAscii, parm1_x;
7231 void() Item_Window_Draw = asm
7233 local vector lColor;
7234 local entity lChild;
7236 local vector temp_2;
7237 local vector temp_3;
7240 INDIRECT_F self, _runFlag, temp_0;
7241 BITAND temp_0, RUNFLAG_MOUSEINAREA, temp_0;
7243 IFNOT sys_debug_area, 50;
7244 INDIRECT_V self, pos_x, temp_2;
7245 INDIRECT_V self, size_x, temp_3;
7246 STORE_V temp_2, parm0;
7247 STORE_V temp_3, parm1;
7248 STORE_V '0.200000 0.000000 0.000000', parm2;
7249 STORE_F ITEM_BUTTON_ACTIONTIME, parm3_x;
7250 STORE_F KEY_GAME, parm4_x;
7252 INDIRECT_E self, _child, lChild;
7254 INDIRECT_F lChild, _runFlag, temp_0;
7255 BITAND temp_0, 96.000000, temp_0;
7256 NOT_F temp_0, temp_0;
7259 INDIRECT_F lChild, orderPos, parm0_x;
7261 ADD_F return_x, SLIST_SERVERREPLYCOUNT, parm0_x;
7262 STORE_F K_TAB, parm1_x;
7264 DIV_F return_x, 8.000000, lColor_x;
7265 INDIRECT_F lChild, orderPos, temp_0;
7266 MUL_F temp_0, 8.000000, parm0_x;
7268 STORE_F return_x, parm0_x;
7269 STORE_F K_TAB, parm1_x;
7271 DIV_F return_x, 8.000000, lColor_y;
7272 INDIRECT_F lChild, orderPos, temp_0;
7273 MUL_F temp_0, SLIST_SORTDESCENDING, parm0_x;
7275 STORE_F return_x, parm0_x;
7276 STORE_F K_TAB, parm1_x;
7278 DIV_F return_x, 8.000000, lColor_z;
7279 INDIRECT_V self, pos_x, temp_2;
7280 INDIRECT_V self, origin_x, temp_3;
7281 ADD_V temp_2, temp_3, temp_2;
7282 INDIRECT_V lChild, pos_x, temp_3;
7283 ADD_V temp_2, temp_3, temp_2;
7284 INDIRECT_V lChild, size_x, temp_3;
7285 STORE_V temp_2, parm0;
7286 STORE_V temp_3, parm1;
7287 STORE_V lColor, parm2;
7288 STORE_F ITEM_BUTTON_ACTIONTIME, parm3_x;
7289 STORE_F KEY_GAME, parm4_x;
7291 INDIRECT_E lChild, _next, lChild;
7293 IFNOT sys_debug_mouse, 5;
7294 INDIRECT_V self, origin_x, temp_2;
7295 SUB_V Menu_Cursor_Position, temp_2, temp_2;
7296 INDIRECT_V self, pos_x, temp_3;
7297 SUB_V temp_2, temp_3, sys_debug_cursor_localpos;
7301 void() Item_Window_Spawn = asm
7305 ADDRESS self, flag, temp_0;
7306 INDIRECT_F self, flag, temp_1;
7307 BITOR temp_1, FLAG_NOSELECT, temp_1;
7308 STOREP_F temp_1, temp_0;
7309 ADDRESS self, _key, temp_0;
7310 STOREP_FNC Item_Window_Key, temp_0;
7311 ADDRESS self, _draw, temp_0;
7312 STOREP_FNC Item_Window_Draw, temp_0;
7316 void() Item_Reference_Update = asm
7318 local float locked_1586;
7320 INDIRECT_S self, link, locked_1586;
7321 EQ_S locked_1586, "", locked_1586;
7322 IFNOT locked_1586, 4;
7323 ADDRESS self, _child, locked_1586;
7324 STOREP_ENT null_entity, locked_1586;
7326 INDIRECT_S self, link, locked_1586;
7327 INDIRECT_E self, _link, temp_1;
7328 INDIRECT_S temp_1, name, temp_1;
7329 NE_S locked_1586, temp_1, locked_1586;
7330 IFNOT locked_1586, 5;
7331 ADDRESS self, _link, locked_1586;
7332 INDIRECT_S self, link, parm0_x;
7334 STOREP_ENT return_x, locked_1586;
7335 ADDRESS self, _child, locked_1586;
7336 INDIRECT_E self, _link, temp_1;
7337 STOREP_ENT temp_1, locked_1586;
7338 INDIRECT_E self, _child, locked_1586;
7339 ADDRESS locked_1586, _parent, locked_1586;
7340 STOREP_ENT self, locked_1586;
7344 void() Item_Reference_Draw = asm
7346 local vector temp_2;
7347 local vector temp_3;
7348 IFNOT sys_debug_ref, 9;
7349 INDIRECT_V self, pos_x, temp_2;
7350 INDIRECT_V self, size_x, temp_3;
7351 STORE_V temp_2, parm0;
7352 STORE_V temp_3, parm1;
7353 STORE_V '0.000000 0.000000 0.200000', parm2;
7354 STORE_F FILE_APPEND, parm3_x;
7355 STORE_F FILE_APPEND, parm4_x;
7360 void() Item_Reference_Destroy = asm
7362 STORE_F self, parm0_x;
7363 STORE_F link, parm1_x;
7364 CALL2 String_EntityFree;
7368 void() Item_Reference_Spawn = asm
7372 ADDRESS self, flag, temp_0;
7373 INDIRECT_F self, flag, temp_1;
7374 BITOR temp_1, FLAG_NOSELECT, temp_1;
7375 BITOR temp_1, FLAG_EMBEDDED, temp_1;
7376 STOREP_F temp_1, temp_0;
7377 STORE_F self, parm0_x;
7378 STORE_F link, parm1_x;
7379 CALL2 String_EntityZone;
7380 CALL0 Item_Reference_Update;
7381 ADDRESS self, _destroy, temp_0;
7382 STOREP_FNC Item_Reference_Destroy, temp_0;
7383 ADDRESS self, _draw, temp_0;
7384 STOREP_FNC Item_Reference_Draw, temp_0;
7385 ADDRESS self, _update, temp_0;
7386 STOREP_FNC Item_Reference_Update, temp_0;
7390 void() Item_Layout_Update = asm
7392 local vector lCurrent;
7393 local entity lChild;
7396 STORE_V '0.000000 0.000000 0.000000', lCurrent;
7397 INDIRECT_E self, _child, lChild;
7399 INDIRECT_F lChild, _runFlag, temp_0;
7400 BITAND temp_0, RUNFLAG_HIDDEN, temp_0;
7403 INDIRECT_F self, direction_y, temp_0;
7405 INDIRECT_F self, alignment, temp_0;
7406 EQ_F temp_0, ITEM_ALIGN_FIRST, temp_0;
7408 INDIRECT_E lChild, _child, temp_1;
7409 AND temp_0, temp_1, temp_0;
7411 ADDRESS lChild, pos_x, temp_0;
7412 INDIRECT_E lChild, _child, temp_1;
7413 INDIRECT_F temp_1, size_x, temp_1;
7414 SUB_F lCurrent_x, temp_1, temp_1;
7415 STOREP_F temp_1, temp_0;
7417 INDIRECT_F self, alignment, temp_0;
7418 EQ_F temp_0, KEY_GAME, temp_0;
7420 ADDRESS lChild, pos_x, temp_0;
7421 STOREP_F lCurrent_x, temp_0;
7423 INDIRECT_F self, alignment, temp_0;
7424 EQ_F temp_0, ITEM_ALIGN_CENTER, temp_0;
7426 ADDRESS lChild, pos_x, temp_0;
7427 INDIRECT_F lChild, size_x, temp_1;
7428 DIV_F temp_1, KEY_MENU, temp_1;
7429 SUB_F lCurrent_x, temp_1, temp_1;
7430 STOREP_F temp_1, temp_0;
7432 ADDRESS lChild, pos_x, temp_0;
7433 INDIRECT_F lChild, size_x, temp_1;
7434 SUB_F lCurrent_x, temp_1, temp_1;
7435 STOREP_F temp_1, temp_0;
7437 ADDRESS lChild, pos_x, temp_0;
7438 STOREP_F lCurrent_x, temp_0;
7439 INDIRECT_F self, direction_x, temp_0;
7441 INDIRECT_F self, alignment, temp_0;
7442 EQ_F temp_0, KEY_GAME, temp_0;
7444 ADDRESS lChild, pos_y, temp_0;
7445 STOREP_F lCurrent_y, temp_0;
7447 INDIRECT_F self, alignment, temp_0;
7448 EQ_F temp_0, ITEM_ALIGN_CENTER, temp_0;
7450 ADDRESS lChild, pos_y, temp_0;
7451 INDIRECT_F lChild, size_y, temp_1;
7452 DIV_F temp_1, KEY_MENU, temp_1;
7453 SUB_F lCurrent_y, temp_1, temp_1;
7454 STOREP_F temp_1, temp_0;
7456 INDIRECT_F self, alignment, temp_0;
7457 EQ_F temp_0, ITEM_ALIGN_FIRST, temp_0;
7459 INDIRECT_E lChild, _child, temp_1;
7460 AND temp_0, temp_1, temp_0;
7462 ADDRESS lChild, pos_y, temp_0;
7463 INDIRECT_E lChild, _child, temp_1;
7464 INDIRECT_F temp_1, size_y, temp_1;
7465 SUB_F lCurrent_y, temp_1, temp_1;
7466 STOREP_F temp_1, temp_0;
7468 ADDRESS lChild, pos_y, temp_0;
7469 INDIRECT_F lChild, size_y, temp_1;
7470 SUB_F lCurrent_y, temp_1, temp_1;
7471 STOREP_F temp_1, temp_0;
7473 ADDRESS lChild, pos_y, temp_0;
7474 STOREP_F lCurrent_y, temp_0;
7475 INDIRECT_F self, direction_x, temp_0;
7477 INDIRECT_F lChild, size_x, temp_0;
7478 INDIRECT_F self, direction_x, temp_1;
7479 ADD_F temp_0, temp_1, temp_0;
7480 ADD_F lCurrent_x, temp_0, lCurrent_x;
7482 INDIRECT_F self, direction_y, temp_0;
7484 INDIRECT_F lChild, size_y, temp_0;
7485 INDIRECT_F self, direction_y, temp_1;
7486 ADD_F temp_0, temp_1, temp_0;
7487 ADD_F lCurrent_y, temp_0, lCurrent_y;
7488 INDIRECT_E lChild, _next, lChild;
7493 void() Item_Layout_Spawn = asm
7496 CALL0 Item_Window_Spawn;
7497 CALL0 Item_Layout_Update;
7498 ADDRESS self, _update, temp_0;
7499 STOREP_FNC Item_Layout_Update, temp_0;
7503 void() Item_Arrangement_CalculateSize = asm
7505 local entity lChild;
7510 local vector temp_2;
7511 local vector temp_3;
7512 STORE_V '0.000000 0.000000 0.000000', lMax;
7513 STORE_F INFINITY, lMin_x;
7514 STORE_F INFINITY, lMin_y;
7515 INDIRECT_E self, _child, lChild;
7517 INDIRECT_F lChild, _runFlag, temp_0;
7518 BITAND temp_0, RUNFLAG_HIDDEN, temp_0;
7521 INDIRECT_F lChild, pos_x, temp_0;
7522 STORE_F lMin_x, parm0_x;
7523 STORE_F temp_0, parm1_x;
7525 STORE_F return_x, lMin_x;
7526 INDIRECT_F lChild, pos_y, temp_0;
7527 STORE_F lMin_y, parm0_x;
7528 STORE_F temp_0, parm1_x;
7530 STORE_F return_x, lMin_y;
7531 INDIRECT_F lChild, pos_x, temp_0;
7532 INDIRECT_F lChild, size_x, temp_1;
7533 ADD_F temp_0, temp_1, temp_0;
7534 STORE_F lMax_x, parm0_x;
7535 STORE_F temp_0, parm1_x;
7537 STORE_F return_x, lMax_x;
7538 INDIRECT_F lChild, pos_y, temp_0;
7539 INDIRECT_F lChild, size_y, temp_1;
7540 ADD_F temp_0, temp_1, temp_0;
7541 STORE_F lMax_y, parm0_x;
7542 STORE_F temp_0, parm1_x;
7544 STORE_F return_x, lMax_y;
7545 INDIRECT_E lChild, _next, lChild;
7547 ADDRESS self, size_x, temp_2_x;
7548 SUB_V lMax, lMin, temp_3;
7549 STOREP_V temp_3_x, temp_2;
7553 void() Item_Arrangement_Update = asm
7557 CALL0 Item_Layout_Update;
7558 CALL0 Item_Arrangement_CalculateSize;
7559 INDIRECT_F self, direction_x, temp_0;
7561 INDIRECT_F self, alignment, temp_0;
7562 EQ_F temp_0, KEY_GAME, temp_0;
7564 ADDRESS self, origin_y, temp_0;
7565 STOREP_F KEY_GAME, temp_0;
7567 INDIRECT_F self, alignment, temp_0;
7568 EQ_F temp_0, ITEM_ALIGN_CENTER, temp_0;
7570 INDIRECT_F self, alignment, temp_1;
7571 EQ_F temp_1, ITEM_ALIGN_FIRST, temp_1;
7572 OR temp_0, temp_1, temp_0;
7574 ADDRESS self, origin_y, temp_0;
7575 INDIRECT_F self, size_y, temp_1;
7576 DIV_F temp_1, KEY_MENU, temp_1;
7577 STOREP_F temp_1, temp_0;
7579 ADDRESS self, origin_y, temp_0;
7580 INDIRECT_F self, size_y, temp_1;
7581 STOREP_F temp_1, temp_0;
7583 ADDRESS self, origin_y, temp_0;
7584 STOREP_F KEY_GAME, temp_0;
7585 INDIRECT_F self, direction_y, temp_0;
7587 INDIRECT_F self, alignment, temp_0;
7588 EQ_F temp_0, KEY_GAME, temp_0;
7590 ADDRESS self, origin_x, temp_0;
7591 STOREP_F KEY_GAME, temp_0;
7593 INDIRECT_F self, alignment, temp_0;
7594 EQ_F temp_0, ITEM_ALIGN_CENTER, temp_0;
7596 INDIRECT_F self, alignment, temp_1;
7597 EQ_F temp_1, ITEM_ALIGN_FIRST, temp_1;
7598 OR temp_0, temp_1, temp_0;
7600 ADDRESS self, origin_x, temp_0;
7601 INDIRECT_F self, size_x, temp_1;
7602 DIV_F temp_1, KEY_MENU, temp_1;
7603 STOREP_F temp_1, temp_0;
7605 ADDRESS self, origin_x, temp_0;
7606 INDIRECT_F self, size_x, temp_1;
7607 STOREP_F temp_1, temp_0;
7609 ADDRESS self, origin_x, temp_0;
7610 STOREP_F KEY_GAME, temp_0;
7614 void() Item_Arrangement_Spawn = asm
7617 CALL0 Item_Layout_Spawn;
7618 CALL0 Item_Arrangement_Update;
7619 ADDRESS self, _update, temp_0;
7620 STOREP_FNC Item_Arrangement_Update, temp_0;
7624 void() Item_ScrollWindow_Update = asm
7626 local float locked_1586;
7627 local entity lParent;
7628 local float lOldLevel;
7633 INDIRECT_F self, _runFlag, locked_1586;
7634 BITAND locked_1586, 96.000000, locked_1586;
7635 NOT_F locked_1586, locked_1586;
7636 NOT_F locked_1586, locked_1586;
7638 INDIRECT_E self, _child, temp_1;
7639 STORE_F Menu_ActiveItem, parm0_x;
7640 STORE_F temp_1, parm1_x;
7641 CALL2 _Menu_IsEmbeddedParentOf;
7642 NOT_F return_x, temp_1;
7643 OR locked_1586, temp_1, locked_1586;
7644 IFNOT locked_1586, 4;
7645 ADDRESS self, _link, locked_1586;
7646 STOREP_ENT null_entity, locked_1586;
7648 INDIRECT_E self, _link, locked_1586;
7649 EQ_E locked_1586, Menu_ActiveItem, locked_1586;
7650 IFNOT locked_1586, 3;
7653 ADDRESS self, _link, locked_1586;
7654 STOREP_ENT Menu_ActiveItem, locked_1586;
7655 INDIRECT_F Menu_ActiveItem, pos_y, lLevel;
7656 INDIRECT_E Menu_ActiveItem, _parent, lParent;
7657 NE_E lParent, self, locked_1586;
7658 IFNOT locked_1586, 7;
7659 INDIRECT_F lParent, origin_y, locked_1586;
7660 INDIRECT_F lParent, pos_y, temp_1;
7661 ADD_F locked_1586, temp_1, locked_1586;
7662 ADD_F lLevel, locked_1586, lLevel;
7663 INDIRECT_E lParent, _parent, lParent;
7665 INDIRECT_F self, origin_y, locked_1586;
7666 SUB_F KEY_GAME, locked_1586, lOldLevel;
7667 INDIRECT_F Menu_ActiveItem, size_y, locked_1586;
7668 INDIRECT_F self, size_y, temp_1;
7669 GT locked_1586, temp_1, locked_1586;
7670 IFNOT locked_1586, 4;
7671 INDIRECT_F Menu_ActiveItem, size_y, temp_1;
7672 ADD_F lLevel, temp_1, temp_1;
7673 GT temp_1, lOldLevel, temp_1;
7674 AND locked_1586, temp_1, locked_1586;
7675 IFNOT locked_1586, 4;
7676 INDIRECT_F self, size_y, temp_1;
7677 ADD_F temp_1, lOldLevel, temp_1;
7678 LT lLevel, temp_1, temp_1;
7679 AND locked_1586, temp_1, locked_1586;
7681 GE lLevel, lOldLevel, temp_1;
7683 INDIRECT_F Menu_ActiveItem, size_y, temp_5;
7684 ADD_F lLevel, temp_5, temp_5;
7685 INDIRECT_F self, size_y, temp_6;
7686 ADD_F lOldLevel, temp_6, temp_6;
7687 LT temp_5, temp_6, temp_5;
7688 AND temp_1, temp_5, temp_1;
7689 OR locked_1586, temp_1, locked_1586;
7690 IFNOT locked_1586, 2;
7692 LT lOldLevel, lLevel, locked_1586;
7693 IFNOT locked_1586, 6;
7694 ADDRESS self, origin_y, locked_1586;
7695 INDIRECT_F self, direction_x, temp_1;
7696 SUB_F temp_1, lLevel, temp_1;
7697 STOREP_F temp_1, locked_1586;
7699 ADDRESS self, origin_y, locked_1586;
7700 INDIRECT_F self, size_y, temp_1;
7701 INDIRECT_F self, direction_x, temp_5;
7702 SUB_F temp_1, temp_5, temp_1;
7703 SUB_F temp_1, lLevel, temp_1;
7704 STOREP_F temp_1, locked_1586;
7705 ADDRESS self, origin_y, locked_1586;
7706 INDIRECT_F self, size_y, temp_1;
7707 INDIRECT_E self, _child, temp_5;
7708 INDIRECT_F temp_5, size_y, temp_5;
7709 SUB_F temp_1, temp_5, temp_1;
7710 INDIRECT_F self, origin_y, temp_5;
7711 STORE_F temp_1, parm0_x;
7712 STORE_F temp_5, parm1_x;
7713 STORE_F KEY_GAME, parm2_x;
7715 STOREP_F return_x, locked_1586;
7719 void () Item_ScrollWindow_Reinit;
7720 void() Item_ScrollWindow_Reinit = asm
7723 ADDRESS self, origin_y, temp_0;
7724 STOREP_F KEY_GAME, temp_0;
7728 void() Item_ScrollWindow_Spawn = asm
7731 CALL0 Item_Window_Spawn;
7732 ADDRESS self, _update, temp_0;
7733 STOREP_FNC Item_ScrollWindow_Update, temp_0;
7734 ADDRESS self, _reinit, temp_0;
7735 STOREP_FNC Item_ScrollWindow_Reinit, temp_0;
7739 void() Item_EventWindow_Spawn = asm
7742 CALL0 Item_Window_Spawn;
7743 ADDRESS self, _destroy, temp_0;
7744 STOREP_FNC CtCall_Destroy, temp_0;
7745 ADDRESS self, _reinit, temp_0;
7746 STOREP_FNC CtCall_Reinit, temp_0;
7747 ADDRESS self, _update, temp_0;
7748 STOREP_FNC CtCall_Update, temp_0;
7753 void() Item_Frame_Spawn = asm
7757 CALL0 Item_Window_Spawn;
7758 ADDRESS self, flag, temp_0;
7759 INDIRECT_F self, flag, temp_1;
7760 SUB_F temp_1, FLAG_NOSELECT, temp_1;
7761 STOREP_F temp_1, temp_0;
7765 float () _IL_GetItemUnderCursor;
7766 float() _IL_GetItemUnderCursor = asm
7768 local float locked_1586;
7774 INDIRECT_F self, size_y, locked_1586;
7775 INDIRECT_F self, fontSize_y, temp_1;
7776 ADD_F temp_1, KEY_MENU, temp_1;
7777 DIV_F locked_1586, temp_1, parm0_x;
7779 STORE_F return_x, lLines;
7780 INDIRECT_E self, _target, locked_1586;
7781 INDIRECT_E self, _target, temp_1;
7782 INDIRECT_F temp_1, _realValue, temp_1;
7783 STORE_F locked_1586, parm0_x;
7784 STORE_F temp_1, parm1_x;
7785 CALL2 DataLink_Switch_GetOrdinal;
7786 DIV_F lLines, KEY_MENU, locked_1586;
7787 SUB_F return_x, locked_1586, parm0_x;
7789 STORE_F KEY_GAME, parm0_x;
7790 STORE_F return_x, parm1_x;
7792 STORE_F return_x, lStart;
7793 INDIRECT_F self, pos_y, locked_1586;
7794 SUB_F Menu_Cursor_Position_y, locked_1586, locked_1586;
7795 INDIRECT_F self, fontSize_y, temp_1;
7796 ADD_F temp_1, KEY_MENU, temp_1;
7797 DIV_F locked_1586, temp_1, parm0_x;
7799 STORE_F return_x, lItem;
7800 ADD_F lStart, lItem, locked_1586;
7801 INDIRECT_E self, _target, temp_1;
7802 INDIRECT_E self, _target, temp_5;
7803 INDIRECT_F temp_5, maxValue, temp_5;
7804 STORE_F temp_1, parm0_x;
7805 STORE_F temp_5, parm1_x;
7806 CALL2 DataLink_Switch_GetOrdinal;
7807 STORE_F locked_1586, parm0_x;
7808 STORE_F return_x, parm1_x;
7810 STORE_F return_x, lItem;
7815 void() Item_List_Draw = asm
7817 local float locked_1586;
7819 local float lItemUnderCursor;
7826 local vector temp_2;
7827 local vector temp_3;
7829 INDIRECT_E self, _target, locked_1586;
7832 INDIRECT_E self, _target, parm0_x;
7833 STORE_F ITEM_DATALINK_GET, parm1_x;
7834 CALL2 Raise_DataEvent;
7835 INDIRECT_F self, size_y, locked_1586;
7836 INDIRECT_F self, fontSize_y, temp_1;
7837 ADD_F temp_1, KEY_MENU, temp_1;
7838 DIV_F locked_1586, temp_1, parm0_x;
7840 STORE_F return_x, lLines;
7841 INDIRECT_E self, _target, locked_1586;
7842 INDIRECT_E self, _target, temp_1;
7843 INDIRECT_F temp_1, _realValue, temp_1;
7844 STORE_F locked_1586, parm0_x;
7845 STORE_F temp_1, parm1_x;
7846 CALL2 DataLink_Switch_GetOrdinal;
7847 DIV_F lLines, KEY_MENU, locked_1586;
7848 SUB_F return_x, locked_1586, parm0_x;
7850 STORE_F KEY_GAME, parm0_x;
7851 STORE_F return_x, parm1_x;
7853 STORE_F return_x, lStart;
7854 ADD_F lStart, lLines, locked_1586;
7855 INDIRECT_E self, _target, temp_1;
7856 INDIRECT_E self, _target, temp_5;
7857 INDIRECT_F temp_5, maxValue, temp_5;
7858 STORE_F temp_1, parm0_x;
7859 STORE_F temp_5, parm1_x;
7860 CALL2 DataLink_Switch_GetOrdinal;
7861 STORE_F locked_1586, parm0_x;
7862 STORE_F return_x, parm1_x;
7864 STORE_F return_x, lEnd;
7865 INDIRECT_F self, _state, locked_1586;
7866 EQ_F locked_1586, ITEM_STATE_NORMAL, locked_1586;
7867 IFNOT locked_1586, 3;
7868 STORE_F ERR_CANNOTOPEN, lItemUnderCursor;
7870 CALL0 _IL_GetItemUnderCursor;
7871 STORE_F return_x, lItemUnderCursor;
7872 INDIRECT_V self, pos_x, temp_2;
7873 ADD_V '0.000000 1.000000 0.000000', temp_2, lPos;
7874 STORE_F lStart, lLine;
7875 LE lLine, lEnd, locked_1586;
7876 IFNOT locked_1586, 89;
7877 INDIRECT_E self, _target, locked_1586;
7878 INDIRECT_S locked_1586, descList, parm0_x;
7879 STORE_F lLine, parm1_x;
7880 CALL2 Util_GetAltStringItem;
7881 STORE_S return_x, lText;
7882 INDIRECT_E self, _target, locked_1586;
7883 INDIRECT_E self, _target, temp_1;
7884 INDIRECT_F temp_1, _realValue, temp_1;
7885 STORE_F locked_1586, parm0_x;
7886 STORE_F temp_1, parm1_x;
7887 CALL2 DataLink_Switch_GetOrdinal;
7888 EQ_F lLine, return_x, locked_1586;
7889 IFNOT locked_1586, 43;
7890 INDIRECT_F self, _state, locked_1586;
7891 EQ_F locked_1586, ITEM_STATE_SELECTED, locked_1586;
7892 IFNOT locked_1586, 13;
7893 INDIRECT_V self, fontSize_x, temp_2;
7894 INDIRECT_V self, colorSelected_x, temp_3;
7895 INDIRECT_F self, alphas_y, locked_1586;
7896 INDIRECT_F self, drawFlags_y, temp_1;
7897 STORE_V lPos, parm0;
7898 STORE_F lText, parm1_x;
7899 STORE_V temp_2, parm2;
7900 STORE_V temp_3, parm3;
7901 STORE_F locked_1586, parm4_x;
7902 STORE_F temp_1, parm5_x;
7903 CALL6 Menu_DrawString;
7905 INDIRECT_F self, _state, locked_1586;
7906 EQ_F locked_1586, ITEM_STATE_PRESSED, locked_1586;
7907 IFNOT locked_1586, 13;
7908 INDIRECT_V self, fontSize_x, temp_2;
7909 INDIRECT_V self, colorPressed_x, temp_3;
7910 INDIRECT_F self, alphas_z, locked_1586;
7911 INDIRECT_F self, drawFlags_z, temp_1;
7912 STORE_V lPos, parm0;
7913 STORE_F lText, parm1_x;
7914 STORE_V temp_2, parm2;
7915 STORE_V temp_3, parm3;
7916 STORE_F locked_1586, parm4_x;
7917 STORE_F temp_1, parm5_x;
7918 CALL6 Menu_DrawString;
7920 INDIRECT_V self, fontSize_x, temp_2;
7921 INDIRECT_V self, colorInactive_x, temp_3;
7922 INDIRECT_F self, alphaInactive, locked_1586;
7923 INDIRECT_F self, drawFlagInactive, temp_1;
7924 STORE_V lPos, parm0;
7925 STORE_F lText, parm1_x;
7926 STORE_V temp_2, parm2;
7927 STORE_V temp_3, parm3;
7928 STORE_F locked_1586, parm4_x;
7929 STORE_F temp_1, parm5_x;
7930 CALL6 Menu_DrawString;
7932 EQ_F lLine, lItemUnderCursor, locked_1586;
7933 IFNOT locked_1586, 13;
7934 INDIRECT_V self, fontSize_x, temp_2;
7935 INDIRECT_V self, colorInactive_x, temp_3;
7936 INDIRECT_F self, alphaInactive, locked_1586;
7937 INDIRECT_F self, drawFlagInactive, temp_1;
7938 STORE_V lPos, parm0;
7939 STORE_F lText, parm1_x;
7940 STORE_V temp_2, parm2;
7941 STORE_V temp_3, parm3;
7942 STORE_F locked_1586, parm4_x;
7943 STORE_F temp_1, parm5_x;
7944 CALL6 Menu_DrawString;
7946 INDIRECT_V self, fontSize_x, temp_2;
7947 INDIRECT_V self, color_x, temp_3;
7948 INDIRECT_F self, alphas_x, locked_1586;
7949 INDIRECT_F self, drawFlags_x, temp_1;
7950 STORE_V lPos, parm0;
7951 STORE_F lText, parm1_x;
7952 STORE_V temp_2, parm2;
7953 STORE_V temp_3, parm3;
7954 STORE_F locked_1586, parm4_x;
7955 STORE_F temp_1, parm5_x;
7956 CALL6 Menu_DrawString;
7957 INDIRECT_F self, fontSize_y, locked_1586;
7958 ADD_F lPos_y, locked_1586, locked_1586;
7959 ADD_F locked_1586, KEY_MENU, lPos_y;
7960 STORE_F lText, parm0_x;
7962 STORE_F lLine, temp_1;
7963 ADD_F lLine, FILE_APPEND, lLine;
7968 void() Item_List_Update = asm
7971 CALL0 Item_DataUser_Update;
7972 INDIRECT_F self, _presstime, temp_0;
7973 ADD_F temp_0, ITEM_BUTTON_ACTIONTIME, temp_0;
7974 GT temp_0, Timer_Time, temp_0;
7976 ADDRESS self, _state, temp_0;
7977 STOREP_F ITEM_STATE_PRESSED, temp_0;
7979 EQ_E Menu_ActiveItem, self, temp_0;
7981 ADDRESS self, _state, temp_0;
7982 STOREP_F ITEM_STATE_SELECTED, temp_0;
7984 ADDRESS self, _state, temp_0;
7985 STOREP_F ITEM_STATE_NORMAL, temp_0;
7989 void(float pSelect, float pUser) Item_List_Select = asm
7993 AND pSelect, pUser, temp_0;
7995 INDIRECT_S self, soundSelected, parm0_x;
8000 float(float pKey, float pAscii) Item_List_Key = asm
8002 local float lSelected;
8005 EQ_F pKey, K_DOWNARROW, temp_0;
8007 INDIRECT_S self, soundPressed, parm0_x;
8009 ADDRESS self, _presstime, temp_0;
8010 STOREP_F Timer_Time, temp_0;
8011 INDIRECT_E self, _target, temp_0;
8012 ADDRESS temp_0, _realValue, temp_0;
8013 INDIRECT_E self, _target, temp_1;
8014 INDIRECT_F temp_1, _realValue, temp_1;
8015 ADD_F temp_1, FILE_APPEND, temp_1;
8016 STOREP_F temp_1, temp_0;
8017 INDIRECT_E self, _target, parm0_x;
8018 STORE_F ITEM_DATALINK_SET, parm1_x;
8019 CALL2 Raise_DataEvent;
8022 EQ_F pKey, K_UPARROW, temp_0;
8024 INDIRECT_S self, soundPressed, parm0_x;
8026 ADDRESS self, _presstime, temp_0;
8027 STOREP_F Timer_Time, temp_0;
8028 INDIRECT_E self, _target, temp_0;
8029 ADDRESS temp_0, _realValue, temp_0;
8030 INDIRECT_E self, _target, temp_1;
8031 INDIRECT_F temp_1, _realValue, temp_1;
8032 SUB_F temp_1, FILE_APPEND, temp_1;
8033 STOREP_F temp_1, temp_0;
8034 INDIRECT_E self, _target, parm0_x;
8035 STORE_F ITEM_DATALINK_SET, parm1_x;
8036 CALL2 Raise_DataEvent;
8039 EQ_F pKey, K_MOUSE1, temp_0;
8041 INDIRECT_S self, soundPressed, parm0_x;
8043 CALL0 _IL_GetItemUnderCursor;
8044 INDIRECT_E self, _target, temp_0;
8045 INDIRECT_F temp_0, stepValue, temp_0;
8046 MUL_F return_x, temp_0, temp_0;
8047 INDIRECT_E self, _target, temp_1;
8048 INDIRECT_F temp_1, minValue, temp_1;
8049 ADD_F temp_0, temp_1, lSelected;
8050 INDIRECT_F self, _presstime, temp_0;
8051 ADD_F temp_0, ITEM_BUTTON_ACTIONTIME, temp_0;
8052 GT temp_0, Timer_Time, temp_0;
8054 INDIRECT_E self, _target, temp_1;
8055 INDIRECT_F temp_1, _realValue, temp_1;
8056 EQ_F lSelected, temp_1, temp_1;
8057 AND temp_0, temp_1, temp_0;
8059 CALL0 CtCall_Action;
8061 ADDRESS self, _presstime, temp_0;
8062 STOREP_F Timer_Time, temp_0;
8063 INDIRECT_E self, _target, temp_0;
8064 ADDRESS temp_0, _realValue, temp_0;
8065 STOREP_F lSelected, temp_0;
8066 INDIRECT_E self, _target, parm0_x;
8067 STORE_F ITEM_DATALINK_SET, parm1_x;
8068 CALL2 Raise_DataEvent;
8074 void() Item_List_Destroy = asm
8076 CALL0 CtCall_Destroy;
8077 STORE_F self, parm0_x;
8078 STORE_F soundSelected, parm1_x;
8079 CALL2 String_EntityFree;
8080 STORE_F self, parm0_x;
8081 STORE_F soundPressed, parm1_x;
8082 CALL2 String_EntityFree;
8083 CALL0 Item_DataUser_Destroy;
8087 void() Item_List_Spawn = asm
8090 CALL0 Item_DataUser_Init;
8091 STORE_F self, parm0_x;
8092 STORE_F soundSelected, parm1_x;
8093 CALL2 String_EntityZone;
8094 STORE_F self, parm0_x;
8095 STORE_F soundPressed, parm1_x;
8096 CALL2 String_EntityZone;
8097 INDIRECT_S self, soundSelected, parm0_x;
8098 CALL1 Sound_Precache;
8099 INDIRECT_S self, soundPressed, parm0_x;
8100 CALL1 Sound_Precache;
8101 ADDRESS self, _draw, temp_0;
8102 STOREP_FNC Item_List_Draw, temp_0;
8103 ADDRESS self, _update, temp_0;
8104 STOREP_FNC Item_List_Update, temp_0;
8105 ADDRESS self, _select, temp_0;
8106 STOREP_FNC Item_List_Select, temp_0;
8107 ADDRESS self, _key, temp_0;
8108 STOREP_FNC Item_List_Key, temp_0;
8109 ADDRESS self, _reinit, temp_0;
8110 STOREP_FNC CtCall_Reinit, temp_0;
8115 float (string) _IB_IsPicture;
8116 float(string pString) _IB_IsPicture = asm
8119 STORE_F pString, parm0_x;
8120 STORE_F KEY_GAME, parm1_x;
8121 STORE_F FILE_APPEND, parm2_x;
8123 EQ_S return_x, "$", temp_0;
8128 string (string) _IB_GetPath;
8129 string(string pString) _IB_GetPath = asm
8131 STORE_F pString, parm0_x;
8132 STORE_F FILE_APPEND, parm1_x;
8133 STORE_F 1000.000000, parm2_x;
8139 vector (string) _IB_GetSize;
8140 vector(string pString) _IB_GetSize = asm
8144 STORE_F pString, parm0_x;
8145 CALL1 _IB_IsPicture;
8147 STORE_F pString, parm0_x;
8149 STORE_F return_x, parm0_x;
8150 CALL1 Gfx_GetImageSize;
8152 STORE_F pString, parm0_x;
8154 INDIRECT_F self, fontSize_x, temp_0;
8155 MUL_F return_x, temp_0, lSize_x;
8156 INDIRECT_F self, fontSize_y, lSize_y;
8157 STORE_F KEY_GAME, lSize_z;
8162 vector () _IB_GetMaxSize;
8163 vector() _IB_GetMaxSize = asm
8166 local vector lPressed;
8167 local vector lSelected;
8168 local vector lNormal;
8170 INDIRECT_S self, normal, parm0_x;
8172 STORE_V return, lNormal;
8173 INDIRECT_S self, selected, parm0_x;
8175 STORE_V return, lSelected;
8176 INDIRECT_S self, pressed, parm0_x;
8178 STORE_V return, lPressed;
8179 STORE_F lNormal_x, parm0_x;
8180 STORE_F lSelected_x, parm1_x;
8181 STORE_F lPressed_x, parm2_x;
8183 STORE_F return_x, lSize_x;
8184 STORE_F lNormal_y, parm0_x;
8185 STORE_F lSelected_y, parm1_x;
8186 STORE_F lPressed_y, parm2_x;
8188 STORE_F return_x, lSize_y;
8189 STORE_F KEY_GAME, lSize_z;
8194 void (string, vector, float, float) _IB_Draw;
8195 void(string pName, vector pColor, float pAlpha, float pDrawFlag) _IB_Draw = asm
8197 local vector lMaxSize;
8202 local vector temp_2;
8203 STORE_F pName, parm0_x;
8205 STORE_V return, lSize;
8206 CALL0 _IB_GetMaxSize;
8207 STORE_V return, lMaxSize;
8208 STORE_F pName, parm0_x;
8209 CALL1 _IB_IsPicture;
8211 INDIRECT_F self, size_x, temp_0;
8212 DIV_F temp_0, lMaxSize_x, temp_0;
8213 MUL_F lSize_x, temp_0, lSize_x;
8214 INDIRECT_F self, size_y, temp_0;
8215 DIV_F temp_0, lMaxSize_y, temp_0;
8216 MUL_F lSize_y, temp_0, lSize_y;
8217 INDIRECT_F self, pos_y, lPos_y;
8218 INDIRECT_F self, alignment, temp_0;
8219 EQ_F temp_0, KEY_GAME, temp_0;
8221 INDIRECT_F self, pos_x, lPos_x;
8222 INDIRECT_F self, alignment, temp_0;
8223 EQ_F temp_0, ITEM_ALIGN_CENTER, temp_0;
8225 INDIRECT_F self, pos_x, temp_0;
8226 INDIRECT_F self, size_x, temp_1;
8227 SUB_F temp_1, lSize_x, temp_1;
8228 DIV_F temp_1, KEY_MENU, temp_1;
8229 ADD_F temp_0, temp_1, lPos_x;
8231 INDIRECT_F self, alignment, temp_0;
8232 EQ_F temp_0, ITEM_ALIGN_RIGHT, temp_0;
8234 INDIRECT_F self, pos_x, temp_0;
8235 INDIRECT_F self, size_x, temp_1;
8236 ADD_F temp_0, temp_1, temp_0;
8237 SUB_F temp_0, lSize_x, lPos_x;
8239 INDIRECT_F self, pos_x, lPos_x;
8240 STORE_F pName, parm0_x;
8241 CALL1 _IB_IsPicture;
8243 STORE_F pName, parm0_x;
8245 STORE_V lPos, parm0;
8246 STORE_F return_x, parm1_x;
8247 STORE_V lSize, parm2;
8248 STORE_V pColor, parm3;
8249 STORE_F pAlpha, parm4_x;
8250 STORE_F pDrawFlag, parm5_x;
8251 CALL6 Menu_DrawPicture;
8253 INDIRECT_V self, fontSize_x, temp_2;
8254 STORE_V lPos, parm0;
8255 STORE_F pName, parm1_x;
8256 STORE_V temp_2, parm2;
8257 STORE_V pColor, parm3;
8258 STORE_F pAlpha, parm4_x;
8259 STORE_F pDrawFlag, parm5_x;
8260 CALL6 Menu_DrawString;
8264 void() Item_Button_Draw = asm
8269 local vector temp_2;
8271 INDIRECT_F self, _state, temp_0;
8272 EQ_F temp_0, ITEM_STATE_NORMAL, temp_0;
8274 INDIRECT_S self, normal, temp_0;
8275 INDIRECT_V self, color_x, temp_2;
8276 INDIRECT_F self, alphas_x, temp_1;
8277 INDIRECT_F self, drawFlags_x, temp_5;
8278 STORE_F temp_0, parm0_x;
8279 STORE_V temp_2, parm1;
8280 STORE_F temp_1, parm2_x;
8281 STORE_F temp_5, parm3_x;
8284 INDIRECT_F self, _state, temp_0;
8285 EQ_F temp_0, ITEM_STATE_SELECTED, temp_0;
8287 INDIRECT_S self, selected, temp_0;
8288 NE_S temp_0, string_null, temp_0;
8290 INDIRECT_S self, selected, lText;
8292 INDIRECT_S self, normal, lText;
8293 INDIRECT_V self, colorSelected_x, temp_2;
8294 INDIRECT_F self, alphas_y, temp_0;
8295 INDIRECT_F self, drawFlags_y, temp_1;
8296 STORE_F lText, parm0_x;
8297 STORE_V temp_2, parm1;
8298 STORE_F temp_0, parm2_x;
8299 STORE_F temp_1, parm3_x;
8302 INDIRECT_F self, _state, temp_0;
8303 EQ_F temp_0, ITEM_STATE_PRESSED, temp_0;
8305 INDIRECT_S self, pressed, temp_0;
8306 NE_S temp_0, string_null, temp_0;
8308 INDIRECT_S self, pressed, lText;
8310 INDIRECT_S self, selected, temp_0;
8311 NE_S temp_0, string_null, temp_0;
8313 INDIRECT_S self, selected, lText;
8315 INDIRECT_S self, normal, lText;
8316 INDIRECT_V self, colorPressed_x, temp_2;
8317 INDIRECT_F self, alphas_z, temp_0;
8318 INDIRECT_F self, drawFlags_z, temp_1;
8319 STORE_F lText, parm0_x;
8320 STORE_V temp_2, parm1;
8321 STORE_F temp_0, parm2_x;
8322 STORE_F temp_1, parm3_x;
8328 void() _IB_Calc = asm
8330 local float locked_1292;
8332 INDIRECT_V self, size_x, locked_1292;
8333 EQ_V locked_1292, '0.000000 0.000000 0.000000', temp_0;
8335 ADDRESS self, size_x, locked_1292;
8336 CALL0 _IB_GetMaxSize;
8337 STOREP_V return_x, locked_1292;
8341 void() Item_Button_Update = asm
8344 CALL0 Item_Link_Update;
8346 INDIRECT_F self, _presstime, temp_0;
8347 ADD_F temp_0, ITEM_BUTTON_ACTIONTIME, temp_0;
8348 GT temp_0, Timer_Time, temp_0;
8350 ADDRESS self, _state, temp_0;
8351 STOREP_F ITEM_STATE_PRESSED, temp_0;
8353 CALL0 Item_Link_IsSelected;
8355 ADDRESS self, _state, temp_0;
8356 STOREP_F ITEM_STATE_SELECTED, temp_0;
8358 ADDRESS self, _state, temp_0;
8359 STOREP_F ITEM_STATE_NORMAL, temp_0;
8363 void(float pSelect, float pUser) Item_Button_Select = asm
8367 AND pSelect, pUser, temp_0;
8369 INDIRECT_S self, soundSelected, parm0_x;
8374 float(float pKey, float pAscii) Item_Button_Key = asm
8378 STORE_F pKey, parm0_x;
8379 STORE_F pAscii, parm1_x;
8380 CALL2 Item_Link_Key;
8383 EQ_F pKey, K_SPACE, temp_0;
8385 EQ_F pKey, K_ENTER, temp_1;
8386 OR temp_0, temp_1, temp_0;
8388 EQ_F pKey, K_MOUSE1, temp_1;
8389 OR temp_0, temp_1, temp_0;
8391 INDIRECT_S self, soundPressed, parm0_x;
8393 ADDRESS self, _presstime, temp_0;
8394 STOREP_F Timer_Time, temp_0;
8395 CALL0 CtCall_Action;
8401 void() Item_Button_Destroy = asm
8403 CALL0 CtCall_Destroy;
8404 STORE_F self, parm0_x;
8405 STORE_F normal, parm1_x;
8406 CALL2 String_EntityFree;
8407 STORE_F self, parm0_x;
8408 STORE_F selected, parm1_x;
8409 CALL2 String_EntityFree;
8410 STORE_F self, parm0_x;
8411 STORE_F pressed, parm1_x;
8412 CALL2 String_EntityFree;
8413 STORE_F self, parm0_x;
8414 STORE_F soundSelected, parm1_x;
8415 CALL2 String_EntityFree;
8416 STORE_F self, parm0_x;
8417 STORE_F soundPressed, parm1_x;
8418 CALL2 String_EntityFree;
8419 CALL0 Item_Link_Destroy;
8423 void() Item_Button_Spawn = asm
8427 ADDRESS self, _presstime, temp_0;
8428 SUB_F Timer_Time, FILE_APPEND, temp_1;
8429 SUB_F temp_1, ITEM_BUTTON_ACTIONTIME, temp_1;
8430 STOREP_F temp_1, temp_0;
8431 STORE_F self, parm0_x;
8432 STORE_F normal, parm1_x;
8433 CALL2 String_EntityZone;
8434 STORE_F self, parm0_x;
8435 STORE_F selected, parm1_x;
8436 CALL2 String_EntityZone;
8437 STORE_F self, parm0_x;
8438 STORE_F pressed, parm1_x;
8439 CALL2 String_EntityZone;
8440 STORE_F self, parm0_x;
8441 STORE_F soundSelected, parm1_x;
8442 CALL2 String_EntityZone;
8443 STORE_F self, parm0_x;
8444 STORE_F soundPressed, parm1_x;
8445 CALL2 String_EntityZone;
8446 CALL0 Item_Link_Init;
8447 INDIRECT_S self, normal, parm0_x;
8448 CALL1 _IB_IsPicture;
8450 INDIRECT_S self, normal, parm0_x;
8452 STORE_F return_x, parm0_x;
8454 INDIRECT_S self, selected, parm0_x;
8455 CALL1 _IB_IsPicture;
8457 INDIRECT_S self, selected, parm0_x;
8459 STORE_F return_x, parm0_x;
8461 INDIRECT_S self, pressed, parm0_x;
8462 CALL1 _IB_IsPicture;
8464 INDIRECT_S self, pressed, parm0_x;
8466 STORE_F return_x, parm0_x;
8468 INDIRECT_S self, soundSelected, parm0_x;
8469 CALL1 Sound_Precache;
8470 INDIRECT_S self, soundPressed, parm0_x;
8471 CALL1 Sound_Precache;
8473 ADDRESS self, _reinit, temp_0;
8474 STOREP_FNC CtCall_Reinit, temp_0;
8475 ADDRESS self, _destroy, temp_0;
8476 STOREP_FNC Item_Button_Destroy, temp_0;
8477 ADDRESS self, _key, temp_0;
8478 STOREP_FNC Item_Button_Key, temp_0;
8479 ADDRESS self, _draw, temp_0;
8480 STOREP_FNC Item_Button_Draw, temp_0;
8481 ADDRESS self, _select, temp_0;
8482 STOREP_FNC Item_Button_Select, temp_0;
8483 ADDRESS self, _update, temp_0;
8484 STOREP_FNC Item_Button_Update, temp_0;
8489 void() Item_EditBox_Draw = asm
8492 local vector lCursor;
8495 local vector temp_2;
8496 local vector temp_3;
8497 local vector temp_4;
8499 INDIRECT_E self, _target, temp_0;
8502 INDIRECT_E self, _target, parm0_x;
8503 STORE_F ITEM_DATALINK_GET, parm1_x;
8504 CALL2 Raise_DataEvent;
8505 INDIRECT_F self, _state, temp_0;
8506 EQ_F temp_0, ITEM_STATE_NORMAL, temp_0;
8508 INDIRECT_V self, pos_x, temp_2;
8509 INDIRECT_V self, origin_x, temp_3;
8510 ADD_V temp_2, temp_3, temp_2;
8511 INDIRECT_E self, _target, temp_0;
8512 INDIRECT_S temp_0, value, temp_0;
8513 INDIRECT_V self, fontSize_x, temp_3;
8514 INDIRECT_V self, color_x, temp_4;
8515 INDIRECT_F self, alphas_x, temp_1;
8516 INDIRECT_F self, drawFlags_x, temp_5;
8517 STORE_V temp_2, parm0;
8518 STORE_F temp_0, parm1_x;
8519 STORE_V temp_3, parm2;
8520 STORE_V temp_4, parm3;
8521 STORE_F temp_1, parm4_x;
8522 STORE_F temp_5, parm5_x;
8523 CALL6 Menu_DrawString;
8525 INDIRECT_F self, _cursorPos, temp_0;
8526 INDIRECT_F self, fontSize_x, temp_1;
8527 MUL_F temp_0, temp_1, lCursor_x;
8528 INDIRECT_F self, fontSize_y, lCursor_y;
8529 MUL_F Timer_Time, 1000.000000, parm0_x;
8530 STORE_F 500.000000, parm1_x;
8532 GT return_x, 250.000000, temp_0;
8534 STORE_F FILE_APPEND, lAlpha;
8536 STORE_F KEY_GAME, lAlpha;
8537 INDIRECT_F self, _state, temp_0;
8538 EQ_F temp_0, ITEM_STATE_SELECTED, temp_0;
8540 INDIRECT_F self, sizeCursor_y, temp_0;
8541 SUB_F lCursor_y, temp_0, lCursor_y;
8542 INDIRECT_V self, pos_x, temp_2;
8543 INDIRECT_V self, origin_x, temp_3;
8544 ADD_V temp_2, temp_3, temp_2;
8545 INDIRECT_E self, _target, temp_0;
8546 INDIRECT_S temp_0, value, temp_0;
8547 INDIRECT_V self, fontSize_x, temp_3;
8548 INDIRECT_V self, colorSelected_x, temp_4;
8549 INDIRECT_F self, alphas_y, temp_1;
8550 INDIRECT_F self, drawFlags_y, temp_5;
8551 STORE_V temp_2, parm0;
8552 STORE_F temp_0, parm1_x;
8553 STORE_V temp_3, parm2;
8554 STORE_V temp_4, parm3;
8555 STORE_F temp_1, parm4_x;
8556 STORE_F temp_5, parm5_x;
8557 CALL6 Menu_DrawString;
8558 INDIRECT_V self, pos_x, temp_2;
8559 INDIRECT_V self, origin_x, temp_3;
8560 ADD_V temp_2, temp_3, temp_2;
8561 ADD_V temp_2, lCursor, temp_2;
8562 INDIRECT_V self, sizeCursor_x, temp_3;
8563 INDIRECT_V self, colorCursor_x, temp_4;
8564 INDIRECT_F self, alphasCursor_x, temp_0;
8565 MUL_F temp_0, lAlpha, temp_0;
8566 INDIRECT_F self, drawFlagsCursor_x, temp_1;
8567 STORE_V temp_2, parm0;
8568 STORE_V temp_3, parm1;
8569 STORE_V temp_4, parm2;
8570 STORE_F temp_0, parm3_x;
8571 STORE_F temp_1, parm4_x;
8574 INDIRECT_F self, sizeCursorFlash_y, temp_0;
8575 SUB_F lCursor_y, temp_0, lCursor_y;
8576 INDIRECT_V self, pos_x, temp_2;
8577 INDIRECT_V self, origin_x, temp_3;
8578 ADD_V temp_2, temp_3, temp_2;
8579 INDIRECT_E self, _target, temp_0;
8580 INDIRECT_S temp_0, value, temp_0;
8581 INDIRECT_V self, fontSize_x, temp_3;
8582 INDIRECT_V self, colorPressed_x, temp_4;
8583 INDIRECT_F self, alphas_z, temp_1;
8584 INDIRECT_F self, drawFlags_z, temp_5;
8585 STORE_V temp_2, parm0;
8586 STORE_F temp_0, parm1_x;
8587 STORE_V temp_3, parm2;
8588 STORE_V temp_4, parm3;
8589 STORE_F temp_1, parm4_x;
8590 STORE_F temp_5, parm5_x;
8591 CALL6 Menu_DrawString;
8592 INDIRECT_V self, pos_x, temp_2;
8593 INDIRECT_V self, origin_x, temp_3;
8594 ADD_V temp_2, temp_3, temp_2;
8595 ADD_V temp_2, lCursor, temp_2;
8596 INDIRECT_V self, sizeCursorFlash_x, temp_3;
8597 INDIRECT_V self, colorCursorFlash_x, temp_4;
8598 INDIRECT_F self, alphasCursor_y, temp_0;
8599 MUL_F temp_0, lAlpha, temp_0;
8600 INDIRECT_F self, drawFlagsCursor_y, temp_1;
8601 STORE_V temp_2, parm0;
8602 STORE_V temp_3, parm1;
8603 STORE_V temp_4, parm2;
8604 STORE_F temp_0, parm3_x;
8605 STORE_F temp_1, parm4_x;
8610 void() Item_EditBox_Update = asm
8612 local float locked_1585;
8613 local float locked_1586;
8616 CALL0 Item_DataUser_Update;
8617 INDIRECT_F self, _presstime, locked_1586;
8618 ADD_F locked_1586, ITEM_EDITBOX_FLASHTIME, locked_1586;
8619 GT locked_1586, Timer_Time, locked_1586;
8620 IFNOT locked_1586, 4;
8621 ADDRESS self, _state, locked_1586;
8622 STOREP_F ITEM_STATE_PRESSED, locked_1586;
8624 EQ_E Menu_ActiveItem, self, locked_1586;
8625 IFNOT locked_1586, 4;
8626 ADDRESS self, _state, locked_1586;
8627 STOREP_F ITEM_STATE_SELECTED, locked_1586;
8629 ADDRESS self, _state, locked_1586;
8630 STOREP_F ITEM_STATE_NORMAL, locked_1586;
8631 INDIRECT_E self, _target, locked_1586;
8634 INDIRECT_E self, _target, parm0_x;
8635 STORE_F ITEM_DATALINK_GET, parm1_x;
8636 CALL2 Raise_DataEvent;
8637 ADDRESS self, _cursorPos, locked_1586;
8638 INDIRECT_F self, _cursorPos, locked_1585;
8639 INDIRECT_E self, _target, temp_5;
8640 INDIRECT_S temp_5, value, parm0_x;
8642 STORE_F KEY_GAME, parm0_x;
8643 STORE_F locked_1585, parm1_x;
8644 STORE_F return_x, parm2_x;
8646 STOREP_F return_x, locked_1586;
8647 ADDRESS self, origin_y, locked_1586;
8648 STOREP_F KEY_GAME, locked_1586;
8649 INDIRECT_F self, _cursorPos, locked_1586;
8650 ADD_F locked_1586, ITEM_EDITBOX_SCROLLDISTANCE, locked_1586;
8651 INDIRECT_F self, size_x, locked_1585;
8652 INDIRECT_F self, fontSize_x, temp_5;
8653 DIV_F locked_1585, temp_5, locked_1585;
8654 GT locked_1586, locked_1585, locked_1586;
8655 IFNOT locked_1586, 8;
8656 INDIRECT_E self, _target, locked_1585;
8657 INDIRECT_F locked_1585, maxValue, locked_1585;
8658 SUB_F locked_1585, ITEM_EDITBOX_SCROLLDISTANCE, locked_1585;
8659 INDIRECT_F self, size_x, temp_5;
8660 INDIRECT_F self, fontSize_x, temp_6;
8661 DIV_F temp_5, temp_6, temp_5;
8662 GT locked_1585, temp_5, locked_1585;
8663 AND locked_1586, locked_1585, locked_1586;
8664 IFNOT locked_1586, 13;
8665 ADDRESS self, origin_x, locked_1586;
8666 INDIRECT_F self, fontSize_x, locked_1585;
8667 INDIRECT_F self, size_x, temp_5;
8668 INDIRECT_F self, fontSize_x, temp_6;
8669 DIV_F temp_5, temp_6, parm0_x;
8671 INDIRECT_F self, _cursorPos, temp_5;
8672 SUB_F return_x, temp_5, temp_5;
8673 SUB_F temp_5, ITEM_EDITBOX_SCROLLDISTANCE, temp_5;
8674 MUL_F locked_1585, temp_5, locked_1585;
8675 STOREP_F locked_1585, locked_1586;
8677 ADDRESS self, origin_x, locked_1586;
8678 STOREP_F KEY_GAME, locked_1586;
8682 void () _IEB_RemoveChar;
8683 void() _IEB_RemoveChar = asm
8685 local string lValue;
8688 INDIRECT_E self, _target, temp_0;
8689 INDIRECT_S temp_0, value, lValue;
8690 INDIRECT_F self, _cursorPos, temp_0;
8691 STORE_F lValue, parm0_x;
8692 STORE_F KEY_GAME, parm1_x;
8693 STORE_F temp_0, parm2_x;
8695 STORE_F return_x, parm0_x;
8697 STORE_S return_x, lTemp;
8698 INDIRECT_F self, _cursorPos, temp_0;
8699 ADD_F temp_0, FILE_APPEND, temp_0;
8700 STORE_F lValue, parm0_x;
8701 STORE_F temp_0, parm1_x;
8702 STORE_F 100000.000000, parm2_x;
8704 STORE_F lTemp, parm0_x;
8705 STORE_F return_x, parm1_x;
8707 STORE_S return_x, lTemp;
8708 INDIRECT_E self, _target, parm0_x;
8709 STORE_F value, parm1_x;
8710 STORE_F lTemp, parm2_x;
8711 CALL3 String_EntitySet;
8712 INDIRECT_E self, _target, parm0_x;
8713 STORE_F ITEM_DATALINK_SET, parm1_x;
8714 CALL2 Raise_DataEvent;
8715 ADDRESS self, _presstime, temp_0;
8716 STOREP_F Timer_Time, temp_0;
8717 INDIRECT_S self, soundKey, parm0_x;
8722 void (float) _IEB_InsertChar;
8723 void(float pAscii) _IEB_InsertChar = asm
8726 local string lValue;
8729 INDIRECT_E self, _target, temp_0;
8730 INDIRECT_S temp_0, value, lValue;
8731 INDIRECT_F self, _cursorPos, temp_0;
8732 STORE_F lValue, parm0_x;
8733 STORE_F KEY_GAME, parm1_x;
8734 STORE_F temp_0, parm2_x;
8736 STORE_F pAscii, parm0_x;
8737 STORE_F return_x, temp_0;
8739 STORE_F return_x, temp_1;
8740 STORE_F temp_0, return_x;
8741 STORE_F return_x, parm0_x;
8742 STORE_F temp_1, parm1_x;
8744 STORE_S return_x, lTemp;
8745 INDIRECT_F self, _cursorPos, temp_0;
8746 STORE_F lValue, parm0_x;
8747 STORE_F temp_0, parm1_x;
8748 STORE_F 100000.000000, parm2_x;
8750 STORE_F lTemp, parm0_x;
8751 STORE_F return_x, parm1_x;
8753 STORE_S return_x, lTemp;
8754 INDIRECT_E self, _target, parm0_x;
8755 STORE_F value, parm1_x;
8756 STORE_F lTemp, parm2_x;
8757 CALL3 String_EntitySet;
8758 INDIRECT_E self, _target, parm0_x;
8759 STORE_F ITEM_DATALINK_SET, parm1_x;
8760 CALL2 Raise_DataEvent;
8761 ADDRESS self, _cursorPos, temp_0;
8762 INDIRECT_F self, _cursorPos, temp_1;
8763 ADD_F temp_1, FILE_APPEND, temp_1;
8764 STOREP_F temp_1, temp_0;
8765 ADDRESS self, _presstime, temp_0;
8766 STOREP_F Timer_Time, temp_0;
8767 INDIRECT_S self, soundKey, parm0_x;
8772 float(float pKey, float pAscii) Item_EditBox_Key = asm
8774 local float locked_1586;
8776 INDIRECT_E self, _target, locked_1586;
8780 EQ_F pKey, K_ENTER, locked_1586;
8781 IFNOT locked_1586, 6;
8782 CALL0 CtCall_Action;
8783 INDIRECT_S self, soundKey, parm0_x;
8787 EQ_F pKey, K_LEFTARROW, locked_1586;
8788 IFNOT locked_1586, 11;
8789 INDIRECT_F self, _cursorPos, locked_1586;
8790 IFNOT locked_1586, 5;
8791 ADDRESS self, _cursorPos, locked_1586;
8792 INDIRECT_F self, _cursorPos, temp_1;
8793 SUB_F temp_1, FILE_APPEND, temp_1;
8794 STOREP_F temp_1, locked_1586;
8795 INDIRECT_S self, soundMove, parm0_x;
8799 EQ_F pKey, K_RIGHTARROW, locked_1586;
8800 IFNOT locked_1586, 15;
8801 INDIRECT_F self, _cursorPos, locked_1586;
8802 INDIRECT_E self, _target, temp_1;
8803 INDIRECT_S temp_1, value, parm0_x;
8805 LT locked_1586, return_x, locked_1586;
8806 IFNOT locked_1586, 5;
8807 ADDRESS self, _cursorPos, locked_1586;
8808 INDIRECT_F self, _cursorPos, temp_1;
8809 ADD_F temp_1, FILE_APPEND, temp_1;
8810 STOREP_F temp_1, locked_1586;
8811 INDIRECT_S self, soundMove, parm0_x;
8815 EQ_F pKey, K_BACKSPACE, locked_1586;
8816 IFNOT locked_1586, 11;
8817 INDIRECT_F self, _cursorPos, locked_1586;
8818 GT locked_1586, KEY_GAME, locked_1586;
8819 IFNOT locked_1586, 6;
8820 ADDRESS self, _cursorPos, locked_1586;
8821 INDIRECT_F self, _cursorPos, temp_1;
8822 SUB_F temp_1, FILE_APPEND, temp_1;
8823 STOREP_F temp_1, locked_1586;
8824 CALL0 _IEB_RemoveChar;
8827 EQ_F pKey, K_DEL, locked_1586;
8828 IFNOT locked_1586, 10;
8829 INDIRECT_F self, _cursorPos, locked_1586;
8830 INDIRECT_E self, _target, temp_1;
8831 INDIRECT_S temp_1, value, parm0_x;
8833 LT locked_1586, return_x, locked_1586;
8834 IFNOT locked_1586, 2;
8835 CALL0 _IEB_RemoveChar;
8838 LE 30.000000, pAscii, locked_1586;
8839 IFNOT locked_1586, 2;
8840 LE pAscii, 126.000000, temp_1;
8841 AND locked_1586, temp_1, locked_1586;
8842 IFNOT locked_1586, 4;
8843 STORE_F pAscii, parm0_x;
8844 CALL1 _IEB_InsertChar;
8850 void(float pSelect, float pUser) Item_EditBox_Select = asm
8853 STORE_F pSelect, parm0_x;
8854 STORE_F pUser, parm1_x;
8855 CALL2 CtCall_Select;
8857 AND pSelect, pUser, temp_0;
8859 INDIRECT_S self, soundSelected, parm0_x;
8864 void() Item_EditBox_Destroy = asm
8866 CALL0 CtCall_Destroy;
8867 CALL0 Item_DataUser_Destroy;
8868 STORE_F self, parm0_x;
8869 STORE_F soundSelected, parm1_x;
8870 CALL2 String_EntityFree;
8871 STORE_F self, parm0_x;
8872 STORE_F soundKey, parm1_x;
8873 CALL2 String_EntityFree;
8874 STORE_F self, parm0_x;
8875 STORE_F soundMove, parm1_x;
8876 CALL2 String_EntityFree;
8880 void() Item_EditBox_Reinit = asm
8883 ADDRESS self, _cursorPos, temp_0;
8884 STOREP_F KEY_GAME, temp_0;
8885 CALL0 CtCall_Reinit;
8889 void() Item_EditBox_Spawn = asm
8891 local float locked_1585;
8892 local float locked_1586;
8893 local vector temp_2;
8895 CALL0 Item_DataUser_Init;
8896 STORE_F self, parm0_x;
8897 STORE_F soundSelected, parm1_x;
8898 CALL2 String_EntityZone;
8899 STORE_F self, parm0_x;
8900 STORE_F soundKey, parm1_x;
8901 CALL2 String_EntityZone;
8902 STORE_F self, parm0_x;
8903 STORE_F soundMove, parm1_x;
8904 CALL2 String_EntityZone;
8905 INDIRECT_S self, soundSelected, parm0_x;
8906 CALL1 Sound_Precache;
8907 INDIRECT_S self, soundKey, parm0_x;
8908 CALL1 Sound_Precache;
8909 INDIRECT_S self, soundMove, parm0_x;
8910 CALL1 Sound_Precache;
8911 INDIRECT_V self, size_x, temp_2;
8912 EQ_V temp_2, '0.000000 0.000000 0.000000', locked_1586;
8913 IFNOT locked_1586, 2;
8914 INDIRECT_E self, _target, locked_1585;
8915 AND locked_1586, locked_1585, locked_1586;
8916 IFNOT locked_1586, 4;
8917 INDIRECT_E self, _target, locked_1585;
8918 INDIRECT_F locked_1585, maxValue, locked_1585;
8919 GE locked_1585, KEY_GAME, locked_1585;
8920 AND locked_1586, locked_1585, locked_1586;
8921 IFNOT locked_1586, 16;
8922 ADDRESS self, size_x, locked_1586;
8923 INDIRECT_F self, fontSize_x, locked_1585;
8924 INDIRECT_E self, _target, temp_5;
8925 INDIRECT_F temp_5, maxValue, temp_5;
8926 MUL_F locked_1585, temp_5, locked_1585;
8927 INDIRECT_F self, sizeCursor_x, temp_5;
8928 INDIRECT_V self, sizeCursorFlash_x, temp_2;
8929 STORE_F temp_5, parm0_x;
8930 STORE_V temp_2, parm1;
8932 ADD_F locked_1585, return_x, locked_1585;
8933 STOREP_F locked_1585, locked_1586;
8934 ADDRESS self, size_y, locked_1586;
8935 INDIRECT_F self, fontSize_y, locked_1585;
8936 STOREP_F locked_1585, locked_1586;
8937 ADDRESS self, _reinit, locked_1586;
8938 STOREP_FNC Item_EditBox_Reinit, locked_1586;
8939 ADDRESS self, _destroy, locked_1586;
8940 STOREP_FNC Item_EditBox_Destroy, locked_1586;
8941 ADDRESS self, _key, locked_1586;
8942 STOREP_FNC Item_EditBox_Key, locked_1586;
8943 ADDRESS self, _draw, locked_1586;
8944 STOREP_FNC Item_EditBox_Draw, locked_1586;
8945 ADDRESS self, _select, locked_1586;
8946 STOREP_FNC Item_EditBox_Select, locked_1586;
8947 ADDRESS self, _update, locked_1586;
8948 STOREP_FNC Item_EditBox_Update, locked_1586;
8954 void() _IL_Calc = asm
8956 local float locked_1585;
8957 local float locked_1586;
8958 local vector temp_2;
8960 INDIRECT_V self, size_x, temp_2;
8961 EQ_V temp_2, '0.000000 0.000000 0.000000', locked_1586;
8962 IFNOT locked_1586, 11;
8963 ADDRESS self, size_x, locked_1586;
8964 INDIRECT_F self, fontSize_x, locked_1585;
8965 INDIRECT_S self, text, parm0_x;
8967 MUL_F locked_1585, return_x, locked_1585;
8968 STOREP_F locked_1585, locked_1586;
8969 ADDRESS self, size_y, locked_1586;
8970 INDIRECT_F self, fontSize_y, locked_1585;
8971 STOREP_F locked_1585, locked_1586;
8973 INDIRECT_V self, fontSize_x, temp_2;
8974 EQ_V temp_2, '0.000000 0.000000 0.000000', locked_1586;
8975 IFNOT locked_1586, 10;
8976 ADDRESS self, fontSize_x, locked_1586;
8977 INDIRECT_F self, size_x, locked_1585;
8978 INDIRECT_S self, text, parm0_x;
8980 DIV_F locked_1585, return_x, locked_1585;
8981 STOREP_F locked_1585, locked_1586;
8982 ADDRESS self, fontSize_y, locked_1586;
8983 INDIRECT_F self, size_y, locked_1585;
8984 STOREP_F locked_1585, locked_1586;
8988 void() Item_Label_Update = asm
8994 void() Item_Label_Draw = asm
8996 local float locked_1585;
8997 local float locked_1586;
8998 local vector lAligned;
8999 local vector temp_2;
9000 local vector temp_3;
9002 INDIRECT_F self, alignment, locked_1586;
9003 EQ_F locked_1586, KEY_GAME, locked_1586;
9004 IFNOT locked_1586, 3;
9005 INDIRECT_F self, pos_x, lAligned_x;
9007 INDIRECT_F self, alignment, locked_1586;
9008 BITAND locked_1586, ITEM_ALIGN_CENTER, locked_1586;
9009 IFNOT locked_1586, 11;
9010 INDIRECT_F self, pos_x, locked_1586;
9011 INDIRECT_F self, size_x, locked_1585;
9012 INDIRECT_S self, text, parm0_x;
9014 INDIRECT_F self, fontSize_x, temp_5;
9015 MUL_F return_x, temp_5, temp_5;
9016 SUB_F locked_1585, temp_5, locked_1585;
9017 DIV_F locked_1585, KEY_MENU, locked_1585;
9018 ADD_F locked_1586, locked_1585, lAligned_x;
9020 INDIRECT_F self, alignment, locked_1586;
9021 BITAND locked_1586, ITEM_ALIGN_RIGHT, locked_1586;
9022 IFNOT locked_1586, 10;
9023 INDIRECT_F self, pos_x, locked_1586;
9024 INDIRECT_F self, size_x, locked_1585;
9025 ADD_F locked_1586, locked_1585, locked_1586;
9026 INDIRECT_S self, text, parm0_x;
9028 INDIRECT_F self, fontSize_x, locked_1585;
9029 MUL_F return_x, locked_1585, locked_1585;
9030 SUB_F locked_1586, locked_1585, lAligned_x;
9032 INDIRECT_F self, pos_x, lAligned_x;
9033 INDIRECT_F self, pos_y, lAligned_y;
9034 INDIRECT_S self, text, locked_1586;
9035 INDIRECT_V self, fontSize_x, temp_2;
9036 INDIRECT_V self, color_x, temp_3;
9037 INDIRECT_F self, alpha, locked_1585;
9038 INDIRECT_F self, drawFlag, temp_5;
9039 STORE_V lAligned, parm0;
9040 STORE_F locked_1586, parm1_x;
9041 STORE_V temp_2, parm2;
9042 STORE_V temp_3, parm3;
9043 STORE_F locked_1585, parm4_x;
9044 STORE_F temp_5, parm5_x;
9045 CALL6 Menu_DrawString;
9049 void() Item_Label_Destroy = asm
9051 STORE_F self, parm0_x;
9052 STORE_F text, parm1_x;
9053 CALL2 String_EntityFree;
9057 void() Item_Label_Spawn = asm
9062 INDIRECT_F self, flag, temp_0;
9063 EQ_F temp_0, KEY_GAME, temp_0;
9065 ADDRESS self, flag, temp_0;
9066 INDIRECT_F self, flag, temp_1;
9067 BITOR temp_1, FLAG_DRAWUPDATEONLY, temp_1;
9068 STOREP_F temp_1, temp_0;
9069 STORE_F self, parm0_x;
9070 STORE_F text, parm1_x;
9071 CALL2 String_EntityZone;
9073 INDIRECT_F self, alignment, temp_0;
9074 BITAND temp_0, ITEM_ALIGN_FIX_CENTER, temp_0;
9076 ADDRESS self, pos_x, temp_0;
9077 INDIRECT_F self, pos_x, temp_1;
9078 INDIRECT_F self, size_x, temp_5;
9079 DIV_F temp_5, KEY_MENU, temp_5;
9080 SUB_F temp_1, temp_5, temp_1;
9081 STOREP_F temp_1, temp_0;
9083 INDIRECT_F self, alignment, temp_0;
9084 BITAND temp_0, ITEM_ALIGN_FIX_LEFT, temp_0;
9086 ADDRESS self, pos_x, temp_0;
9087 INDIRECT_F self, pos_x, temp_1;
9088 INDIRECT_F self, size_x, temp_5;
9089 SUB_F temp_1, temp_5, temp_1;
9090 STOREP_F temp_1, temp_0;
9091 ADDRESS self, _destroy, temp_0;
9092 STOREP_FNC Item_Label_Destroy, temp_0;
9093 ADDRESS self, _draw, temp_0;
9094 STOREP_FNC Item_Label_Draw, temp_0;
9095 ADDRESS self, _update, temp_0;
9096 STOREP_FNC Item_Label_Update, temp_0;
9101 void() _IML_Calc = asm
9104 local float lLineNumber;
9105 local float lMaxWidth;
9108 STORE_F KEY_GAME, lMaxWidth;
9109 STORE_F KEY_GAME, lLineNumber;
9110 STORE_V '0.000000 0.000000 0.000000', lLine;
9111 INDIRECT_F self, wrap, temp_0;
9113 INDIRECT_S self, text, temp_0;
9114 INDIRECT_F self, wrap, temp_1;
9115 STORE_F temp_0, parm0_x;
9116 STORE_V lLine, parm1;
9117 STORE_F temp_1, parm2_x;
9118 CALL3 Util_GetEndOfWrappedLine;
9119 STORE_V return, lLine;
9121 INDIRECT_S self, text, parm0_x;
9122 STORE_V lLine, parm1;
9123 CALL2 Util_GetEndOfLine;
9124 STORE_V return, lLine;
9125 ADD_F lLineNumber, FILE_APPEND, lLineNumber;
9126 STORE_F lMaxWidth, parm0_x;
9127 STORE_F lLine_z, parm1_x;
9129 STORE_F return_x, lMaxWidth;
9130 NE_F lLine_x, lLine_y, temp_0;
9132 ADDRESS self, size_x, temp_0;
9133 INDIRECT_F self, fontSize_x, temp_1;
9134 MUL_F lMaxWidth, temp_1, temp_1;
9135 STOREP_F temp_1, temp_0;
9136 ADDRESS self, size_y, temp_0;
9137 INDIRECT_F self, fontSize_y, temp_1;
9138 MUL_F lLineNumber, temp_1, temp_1;
9139 STOREP_F temp_1, temp_0;
9143 void (vector, string) _IML_DrawLine;
9144 void(vector pPosition, string pText) _IML_DrawLine = asm
9146 local float locked_1585;
9147 local float locked_1586;
9148 local vector temp_2;
9149 local vector temp_3;
9151 INDIRECT_F self, alignment, locked_1586;
9152 EQ_F locked_1586, ITEM_ALIGN_CENTER, locked_1586;
9153 IFNOT locked_1586, 11;
9154 INDIRECT_F self, pos_x, locked_1586;
9155 INDIRECT_F self, size_x, locked_1585;
9156 STORE_F pText, parm0_x;
9158 INDIRECT_F self, fontSize_x, temp_5;
9159 MUL_F return_x, temp_5, temp_5;
9160 SUB_F locked_1585, temp_5, locked_1585;
9161 DIV_F locked_1585, KEY_MENU, locked_1585;
9162 ADD_F locked_1586, locked_1585, pPosition_x;
9164 INDIRECT_F self, alignment, locked_1586;
9165 EQ_F locked_1586, ITEM_ALIGN_RIGHT, locked_1586;
9166 IFNOT locked_1586, 10;
9167 INDIRECT_F self, pos_x, locked_1586;
9168 INDIRECT_F self, size_x, locked_1585;
9169 ADD_F locked_1586, locked_1585, locked_1586;
9170 STORE_F pText, parm0_x;
9172 INDIRECT_F self, fontSize_x, locked_1585;
9173 MUL_F return_x, locked_1585, locked_1585;
9174 SUB_F locked_1586, locked_1585, pPosition_x;
9176 INDIRECT_F self, pos_x, pPosition_x;
9177 INDIRECT_V self, fontSize_x, temp_2;
9178 INDIRECT_V self, color_x, temp_3;
9179 INDIRECT_F self, alpha, locked_1586;
9180 INDIRECT_F self, drawFlag, locked_1585;
9181 STORE_V pPosition, parm0;
9182 STORE_F pText, parm1_x;
9183 STORE_V temp_2, parm2;
9184 STORE_V temp_3, parm3;
9185 STORE_F locked_1586, parm4_x;
9186 STORE_F locked_1585, parm5_x;
9187 CALL6 Menu_DrawString;
9191 void() Item_MultiLabel_Draw = asm
9194 local vector lPosition;
9197 INDIRECT_F self, pos_y, lPosition_y;
9198 STORE_V '0.000000 0.000000 0.000000', lLine;
9199 INDIRECT_F self, wrap, temp_0;
9201 INDIRECT_S self, text, temp_0;
9202 INDIRECT_F self, wrap, temp_1;
9203 STORE_F temp_0, parm0_x;
9204 STORE_V lLine, parm1;
9205 STORE_F temp_1, parm2_x;
9206 CALL3 Util_GetEndOfWrappedLine;
9207 STORE_V return, lLine;
9209 INDIRECT_S self, text, parm0_x;
9210 STORE_V lLine, parm1;
9211 CALL2 Util_GetEndOfLine;
9212 STORE_V return, lLine;
9213 INDIRECT_S self, text, temp_0;
9214 SUB_F lLine_x, lLine_z, temp_1;
9215 ADD_F temp_1, FILE_APPEND, temp_1;
9216 STORE_F temp_0, parm0_x;
9217 STORE_F temp_1, parm1_x;
9218 STORE_F lLine_z, parm2_x;
9220 STORE_V lPosition, parm0;
9221 STORE_F return_x, parm1_x;
9222 CALL2 _IML_DrawLine;
9223 INDIRECT_F self, fontSize_y, temp_0;
9224 ADD_F lPosition_y, temp_0, lPosition_y;
9225 NE_F lLine_x, lLine_y, temp_0;
9230 void() Item_MultiLabel_Update = asm
9233 local vector temp_2;
9234 INDIRECT_V self, size_x, temp_2;
9235 EQ_V temp_2, '0.000000 0.000000 0.000000', temp_0;
9241 void() Item_MultiLabel_Destroy = asm
9243 STORE_F self, parm0_x;
9244 STORE_F text, parm1_x;
9245 CALL2 String_EntityFree;
9249 void() Item_MultiLabel_Spawn = asm
9253 INDIRECT_F self, flag, temp_0;
9254 EQ_F temp_0, KEY_GAME, temp_0;
9256 ADDRESS self, flag, temp_0;
9257 INDIRECT_F self, flag, temp_1;
9258 BITOR temp_1, FLAG_DRAWUPDATEONLY, temp_1;
9259 STOREP_F temp_1, temp_0;
9260 STORE_F self, parm0_x;
9261 STORE_F text, parm1_x;
9262 CALL2 String_EntityZone;
9263 CALL0 Item_MultiLabel_Update;
9264 ADDRESS self, _destroy, temp_0;
9265 STOREP_FNC Item_MultiLabel_Destroy, temp_0;
9266 ADDRESS self, _draw, temp_0;
9267 STOREP_FNC Item_MultiLabel_Draw, temp_0;
9268 ADDRESS self, _update, temp_0;
9269 STOREP_FNC Item_MultiLabel_Update, temp_0;
9273 void() Item_Picture_Draw = asm
9277 local vector temp_2;
9278 local vector temp_3;
9279 local vector temp_4;
9281 INDIRECT_V self, pos_x, temp_2;
9282 INDIRECT_S self, picture, temp_0;
9283 INDIRECT_V self, size_x, temp_3;
9284 INDIRECT_V self, color_x, temp_4;
9285 INDIRECT_F self, alpha, temp_1;
9286 INDIRECT_F self, drawFlag, temp_5;
9287 STORE_V temp_2, parm0;
9288 STORE_F temp_0, parm1_x;
9289 STORE_V temp_3, parm2;
9290 STORE_V temp_4, parm3;
9291 STORE_F temp_1, parm4_x;
9292 STORE_F temp_5, parm5_x;
9293 CALL6 Menu_DrawPicture;
9297 void() Item_Picture_Destroy = asm
9299 STORE_F self, parm0_x;
9300 STORE_F picture, parm1_x;
9301 CALL2 String_EntityFree;
9305 void() Item_Picture_Spawn = asm
9309 INDIRECT_S self, picture, temp_0;
9310 NOT_S temp_0, temp_0;
9312 STORE_F self, parm0_x;
9313 CALL1 Menu_DeleteAfterFrame;
9315 STORE_F self, parm0_x;
9316 STORE_F picture, parm1_x;
9317 CALL2 String_EntityZone;
9318 INDIRECT_S self, picture, parm0_x;
9320 INDIRECT_F self, flag, temp_0;
9321 EQ_F temp_0, KEY_GAME, temp_0;
9323 ADDRESS self, flag, temp_0;
9324 INDIRECT_F self, flag, temp_1;
9325 BITOR temp_1, FLAG_NOSELECT, temp_1;
9326 STOREP_F temp_1, temp_0;
9327 ADDRESS self, _destroy, temp_0;
9328 STOREP_FNC Item_Picture_Destroy, temp_0;
9329 ADDRESS self, _draw, temp_0;
9330 STOREP_FNC Item_Picture_Draw, temp_0;
9334 void() Item_Rect_Draw = asm
9338 local vector temp_2;
9339 local vector temp_3;
9340 local vector temp_4;
9341 INDIRECT_V self, pos_x, temp_2;
9342 INDIRECT_V self, size_x, temp_3;
9343 INDIRECT_V self, color_x, temp_4;
9344 INDIRECT_F self, alpha, temp_0;
9345 INDIRECT_F self, drawFlag, temp_1;
9346 STORE_V temp_2, parm0;
9347 STORE_V temp_3, parm1;
9348 STORE_V temp_4, parm2;
9349 STORE_F temp_0, parm3_x;
9350 STORE_F temp_1, parm4_x;
9355 void() Item_Rect_Spawn = asm
9359 ADDRESS self, flag, temp_0;
9360 INDIRECT_F self, flag, temp_1;
9361 BITOR temp_1, FLAG_NOSELECT, temp_1;
9362 STOREP_F temp_1, temp_0;
9363 ADDRESS self, _draw, temp_0;
9364 STOREP_FNC Item_Rect_Draw, temp_0;
9368 float () _IS_GetValue;
9369 float() _IS_GetValue = asm
9376 INDIRECT_E self, _target, temp_0;
9379 INDIRECT_E self, _target, lLink;
9380 STORE_F lLink, parm0_x;
9381 STORE_F ITEM_DATALINK_GET, parm1_x;
9382 CALL2 Raise_DataEvent;
9383 INDIRECT_F lLink, maxValue, temp_0;
9384 INDIRECT_F lLink, minValue, temp_1;
9385 LE temp_0, temp_1, temp_0;
9387 STORE_F KEY_GAME, lValue;
9389 INDIRECT_F lLink, _realValue, temp_0;
9390 INDIRECT_F lLink, minValue, temp_1;
9391 SUB_F temp_0, temp_1, temp_0;
9392 INDIRECT_F lLink, maxValue, temp_1;
9393 INDIRECT_F lLink, minValue, temp_5;
9394 SUB_F temp_1, temp_5, temp_1;
9395 DIV_F temp_0, temp_1, lValue;
9400 void(float pSelect, float pUser) Item_Slider_Select = asm
9403 BITAND pSelect, pUser, temp_0;
9405 INDIRECT_S self, soundSelected, parm0_x;
9410 void() Item_Slider_Draw = asm
9412 local vector lSliderPos;
9416 local vector temp_2;
9417 local vector temp_3;
9418 local vector temp_4;
9422 STORE_F return_x, lValue;
9423 INDIRECT_F self, pos_x, temp_0;
9424 INDIRECT_F self, size_x, temp_1;
9425 INDIRECT_F self, proportions_x, temp_5;
9426 INDIRECT_F self, proportions_y, temp_6;
9427 MUL_F lValue, temp_6, temp_6;
9428 ADD_F temp_5, temp_6, temp_5;
9429 MUL_F temp_1, temp_5, temp_1;
9430 ADD_F temp_0, temp_1, temp_0;
9431 INDIRECT_F self, sizeSlider_x, temp_1;
9432 MUL_F lValue, temp_1, temp_1;
9433 SUB_F temp_0, temp_1, lSliderPos_x;
9434 INDIRECT_F self, pos_y, temp_0;
9435 INDIRECT_F self, size_y, temp_1;
9436 INDIRECT_F self, sizeSlider_y, temp_5;
9437 SUB_F temp_1, temp_5, temp_1;
9438 INDIRECT_F self, direction_y, temp_5;
9439 INDIRECT_F self, direction_x, temp_6;
9440 SUB_F temp_5, temp_6, temp_5;
9441 MUL_F temp_5, lValue, temp_5;
9442 SUB_F FILE_APPEND, temp_5, temp_5;
9443 INDIRECT_F self, direction_x, temp_6;
9444 SUB_F temp_5, temp_6, temp_5;
9445 MUL_F temp_1, temp_5, temp_1;
9446 ADD_F temp_0, temp_1, lSliderPos_y;
9447 EQ_E Menu_ActiveItem, self, temp_0;
9449 INDIRECT_V self, pos_x, temp_2;
9450 INDIRECT_S self, picture, temp_0;
9451 INDIRECT_V self, size_x, temp_3;
9452 INDIRECT_V self, colorSelected_x, temp_4;
9453 INDIRECT_F self, alphas_y, temp_1;
9454 INDIRECT_F self, drawFlags_y, temp_5;
9455 STORE_V temp_2, parm0;
9456 STORE_F temp_0, parm1_x;
9457 STORE_V temp_3, parm2;
9458 STORE_V temp_4, parm3;
9459 STORE_F temp_1, parm4_x;
9460 STORE_F temp_5, parm5_x;
9461 CALL6 Menu_DrawPicture;
9462 INDIRECT_S self, pictureSlider, temp_0;
9463 INDIRECT_V self, sizeSlider_x, temp_2;
9464 INDIRECT_V self, colorSelected_x, temp_3;
9465 INDIRECT_F self, alphas_y, temp_1;
9466 INDIRECT_F self, drawFlags_y, temp_5;
9467 STORE_V lSliderPos, parm0;
9468 STORE_F temp_0, parm1_x;
9469 STORE_V temp_2, parm2;
9470 STORE_V temp_3, parm3;
9471 STORE_F temp_1, parm4_x;
9472 STORE_F temp_5, parm5_x;
9473 CALL6 Menu_DrawPicture;
9475 INDIRECT_V self, pos_x, temp_2;
9476 INDIRECT_S self, picture, temp_0;
9477 INDIRECT_V self, size_x, temp_3;
9478 INDIRECT_V self, color_x, temp_4;
9479 INDIRECT_F self, alphas_x, temp_1;
9480 INDIRECT_F self, drawFlags_x, temp_5;
9481 STORE_V temp_2, parm0;
9482 STORE_F temp_0, parm1_x;
9483 STORE_V temp_3, parm2;
9484 STORE_V temp_4, parm3;
9485 STORE_F temp_1, parm4_x;
9486 STORE_F temp_5, parm5_x;
9487 CALL6 Menu_DrawPicture;
9488 INDIRECT_S self, pictureSlider, temp_0;
9489 INDIRECT_V self, sizeSlider_x, temp_2;
9490 INDIRECT_V self, color_x, temp_3;
9491 INDIRECT_F self, alphas_x, temp_1;
9492 INDIRECT_F self, drawFlags_x, temp_5;
9493 STORE_V lSliderPos, parm0;
9494 STORE_F temp_0, parm1_x;
9495 STORE_V temp_2, parm2;
9496 STORE_V temp_3, parm3;
9497 STORE_F temp_1, parm4_x;
9498 STORE_F temp_5, parm5_x;
9499 CALL6 Menu_DrawPicture;
9503 void (float) _IS_Change;
9504 void(float pValue) _IS_Change = asm
9508 LT pValue, KEY_GAME, temp_0;
9510 INDIRECT_S self, soundDecrease, parm0_x;
9513 INDIRECT_S self, soundIncrease, parm0_x;
9515 INDIRECT_E self, _target, temp_0;
9516 ADDRESS temp_0, _realValue, temp_0;
9517 INDIRECT_E self, _target, temp_1;
9518 INDIRECT_F temp_1, _realValue, temp_1;
9519 ADD_F temp_1, pValue, temp_1;
9520 STOREP_F temp_1, temp_0;
9521 INDIRECT_E self, _target, parm0_x;
9522 STORE_F ITEM_DATALINK_SET, parm1_x;
9523 CALL2 Raise_DataEvent;
9524 CALL0 CtCall_Action;
9528 float(float pKey, float pAscii) Item_Slider_Key = asm
9534 local vector temp_2;
9535 local vector temp_3;
9537 INDIRECT_E self, _target, temp_0;
9541 INDIRECT_E self, _target, temp_0;
9542 INDIRECT_F temp_0, stepValue, temp_0;
9543 SUB_F KEY_GAME, temp_0, parm0_x;
9547 INDIRECT_E self, _target, temp_0;
9548 INDIRECT_F temp_0, stepValue, parm0_x;
9552 INDIRECT_V self, pos_x, temp_2;
9553 INDIRECT_V self, size_x, temp_3;
9554 STORE_V Menu_Cursor_Position, parm0;
9555 STORE_V temp_2, parm1;
9556 STORE_V temp_3, parm2;
9560 INDIRECT_F self, pos_x, temp_0;
9561 SUB_F Menu_Cursor_Position_x, temp_0, temp_0;
9562 INDIRECT_F self, size_x, temp_1;
9563 DIV_F temp_0, temp_1, lPos;
9564 INDIRECT_F self, proportions_x, temp_0;
9565 LE lPos, temp_0, temp_0;
9567 INDIRECT_E self, _target, temp_0;
9568 INDIRECT_F temp_0, stepValue, temp_0;
9569 SUB_F KEY_GAME, temp_0, parm0_x;
9572 INDIRECT_F self, proportions_x, temp_0;
9573 INDIRECT_F self, proportions_y, temp_1;
9574 ADD_F temp_0, temp_1, temp_0;
9575 LE lPos, temp_0, temp_0;
9577 INDIRECT_F self, proportions_y, temp_1;
9578 AND temp_0, temp_1, temp_0;
9580 INDIRECT_F self, pos_x, temp_0;
9581 SUB_F Menu_Cursor_Position_x, temp_0, temp_0;
9582 INDIRECT_F self, sizeSlider_x, temp_1;
9583 DIV_F temp_1, KEY_MENU, temp_1;
9584 SUB_F temp_0, temp_1, temp_0;
9585 INDIRECT_F self, size_x, temp_1;
9586 INDIRECT_F self, proportions_x, temp_5;
9587 MUL_F temp_1, temp_5, temp_1;
9588 SUB_F temp_0, temp_1, lValue;
9589 INDIRECT_F self, size_x, temp_0;
9590 INDIRECT_F self, proportions_y, temp_1;
9591 MUL_F temp_0, temp_1, temp_0;
9592 INDIRECT_F self, sizeSlider_x, temp_1;
9593 SUB_F temp_0, temp_1, temp_0;
9594 DIV_F lValue, temp_0, lValue;
9595 INDIRECT_E self, _target, temp_0;
9596 INDIRECT_F temp_0, maxValue, temp_0;
9597 INDIRECT_E self, _target, temp_1;
9598 INDIRECT_F temp_1, minValue, temp_1;
9599 SUB_F temp_0, temp_1, temp_0;
9600 MUL_F lValue, temp_0, temp_0;
9601 INDIRECT_E self, _target, temp_1;
9602 INDIRECT_F temp_1, minValue, temp_1;
9603 ADD_F temp_0, temp_1, lValue;
9604 INDIRECT_E self, _target, temp_0;
9605 INDIRECT_F temp_0, _realValue, temp_0;
9606 SUB_F lValue, temp_0, parm0_x;
9609 INDIRECT_E self, _target, temp_0;
9610 INDIRECT_F temp_0, stepValue, parm0_x;
9613 EQ_F pKey, K_LEFTARROW, temp_0;
9615 EQ_F pKey, K_RIGHTARROW, temp_0;
9617 EQ_F pKey, K_MOUSE1, temp_0;
9623 void() Item_Slider_Destroy = asm
9625 CALL0 CtCall_Destroy;
9626 CALL0 Item_DataUser_Destroy;
9627 STORE_F self, parm0_x;
9628 STORE_F picture, parm1_x;
9629 CALL2 String_EntityFree;
9630 STORE_F self, parm0_x;
9631 STORE_F pictureSlider, parm1_x;
9632 CALL2 String_EntityFree;
9633 STORE_F self, parm0_x;
9634 STORE_F soundSelected, parm1_x;
9635 CALL2 String_EntityFree;
9636 STORE_F self, parm0_x;
9637 STORE_F soundIncrease, parm1_x;
9638 CALL2 String_EntityFree;
9639 STORE_F self, parm0_x;
9640 STORE_F soundDecrease, parm1_x;
9641 CALL2 String_EntityFree;
9645 void() Item_Slider_Spawn = asm
9647 local float locked_1292;
9649 STORE_F self, parm0_x;
9650 STORE_F picture, parm1_x;
9651 CALL2 String_EntityZone;
9652 STORE_F self, parm0_x;
9653 STORE_F pictureSlider, parm1_x;
9654 CALL2 String_EntityZone;
9655 STORE_F self, parm0_x;
9656 STORE_F soundSelected, parm1_x;
9657 CALL2 String_EntityZone;
9658 STORE_F self, parm0_x;
9659 STORE_F soundIncrease, parm1_x;
9660 CALL2 String_EntityZone;
9661 STORE_F self, parm0_x;
9662 STORE_F soundDecrease, parm1_x;
9663 CALL2 String_EntityZone;
9664 CALL0 Item_DataUser_Init;
9665 INDIRECT_S self, picture, parm0_x;
9667 INDIRECT_S self, pictureSlider, parm0_x;
9669 INDIRECT_S self, soundSelected, parm0_x;
9670 CALL1 Sound_Precache;
9671 INDIRECT_S self, soundIncrease, parm0_x;
9672 CALL1 Sound_Precache;
9673 INDIRECT_S self, soundDecrease, parm0_x;
9674 CALL1 Sound_Precache;
9675 INDIRECT_V self, size_x, locked_1292;
9676 EQ_V locked_1292, '0.000000 0.000000 0.000000', temp_0;
9678 ADDRESS self, size_x, locked_1292;
9679 INDIRECT_S self, picture, parm0_x;
9680 CALL1 Gfx_GetImageSize;
9681 STOREP_V return_x, locked_1292;
9682 INDIRECT_V self, sizeSlider_x, locked_1292;
9683 EQ_V locked_1292, '0.000000 0.000000 0.000000', temp_0;
9685 ADDRESS self, sizeSlider_x, locked_1292;
9686 INDIRECT_S self, pictureSlider, parm0_x;
9687 CALL1 Gfx_GetImageSize;
9688 STOREP_V return_x, locked_1292;
9689 ADDRESS self, _reinit, temp_0;
9690 STOREP_FNC CtCall_Reinit, temp_0;
9691 ADDRESS self, _destroy, temp_0;
9692 STOREP_FNC Item_Slider_Destroy, temp_0;
9693 ADDRESS self, _key, temp_0;
9694 STOREP_FNC Item_Slider_Key, temp_0;
9695 ADDRESS self, _draw, temp_0;
9696 STOREP_FNC Item_Slider_Draw, temp_0;
9697 ADDRESS self, _select, temp_0;
9698 STOREP_FNC Item_Slider_Select, temp_0;
9699 ADDRESS self, _update, temp_0;
9700 STOREP_FNC Item_DataUser_Update, temp_0;
9705 void() Item_ValueButton_Update = asm
9708 local vector temp_2;
9709 CALL0 Item_DataUser_Update;
9710 INDIRECT_E self, _target, parm0_x;
9711 STORE_F ITEM_DATALINK_GET, parm1_x;
9712 CALL2 Raise_DataEvent;
9713 INDIRECT_E self, _target, temp_0;
9714 INDIRECT_S temp_0, value, temp_0;
9715 STORE_F self, parm0_x;
9716 STORE_F normal, parm1_x;
9717 STORE_F temp_0, parm2_x;
9718 CALL3 String_EntitySet;
9719 ADDRESS self, size_x, temp_2_x;
9720 STOREP_V '0.000000 0.000000 0.000000', temp_2;
9721 CALL0 Item_Button_Update;
9725 void() Item_ValueButton_Destroy = asm
9727 CALL0 Item_DataUser_Destroy;
9728 CALL0 Item_Button_Destroy;
9732 void() Item_ValueButton_Spawn = asm
9735 CALL0 Item_DataUser_Init;
9736 CALL0 Item_Button_Spawn;
9737 ADDRESS self, _destroy, temp_0;
9738 STOREP_FNC Item_ValueButton_Destroy, temp_0;
9739 ADDRESS self, _update, temp_0;
9740 STOREP_FNC Item_ValueButton_Update, temp_0;
9744 float(float pKey, float pAscii) Item_FloatingArea_Key = asm
9748 EQ_F pKey, K_MOUSE1, temp_0;
9750 EQ_F pKey, K_ENTER, temp_1;
9751 OR temp_0, temp_1, temp_0;
9753 INDIRECT_F self, _state, temp_0;
9754 NE_F temp_0, ITEM_STATE_PRESSED, temp_0;
9756 ADDRESS self, _state, temp_0;
9757 STOREP_F ITEM_STATE_PRESSED, temp_0;
9759 ADDRESS self, _state, temp_0;
9760 STOREP_F ITEM_STATE_NORMAL, temp_0;
9763 EQ_F pKey, K_ESCAPE, temp_0;
9765 ADDRESS self, _state, temp_0;
9766 STOREP_F ITEM_STATE_NORMAL, temp_0;
9771 void() Item_FloatingArea_Update = asm
9773 local float locked_1586;
9775 local vector temp_2;
9776 local vector temp_3;
9777 INDIRECT_S self, target, locked_1586;
9778 NOT_S locked_1586, locked_1586;
9779 IFNOT locked_1586, 5;
9780 ADDRESS self, _state, locked_1586;
9781 STOREP_F ITEM_STATE_NORMAL, locked_1586;
9784 INDIRECT_S self, target, locked_1586;
9785 INDIRECT_E self, _target, temp_1;
9786 INDIRECT_S temp_1, name, temp_1;
9787 NE_S locked_1586, temp_1, locked_1586;
9788 IFNOT locked_1586, 5;
9789 ADDRESS self, _target, locked_1586;
9790 INDIRECT_S self, target, parm0_x;
9792 STOREP_ENT return_x, locked_1586;
9793 INDIRECT_F self, _state, locked_1586;
9794 EQ_F locked_1586, ITEM_STATE_PRESSED, locked_1586;
9795 IFNOT locked_1586, 8;
9796 INDIRECT_E self, _target, locked_1586;
9797 ADDRESS locked_1586, pos_x, temp_2_x;
9798 INDIRECT_E self, _target, locked_1586;
9799 INDIRECT_V locked_1586, pos_x, temp_3;
9800 ADD_V temp_3, Cursor_Relative, temp_3;
9801 STOREP_V temp_3_x, temp_2;
9803 EQ_E Menu_ActiveItem, self, locked_1586;
9804 IFNOT locked_1586, 3;
9805 ADDRESS self, _state, locked_1586;
9806 STOREP_F ITEM_STATE_SELECTED, locked_1586;
9810 void () Item_FloatingArea_Destroy;
9811 void() Item_FloatingArea_Destroy = asm
9813 STORE_F self, parm0_x;
9814 STORE_F target, parm1_x;
9815 CALL2 String_EntityFree;
9819 void (float, float) Item_FloatingArea_Select;
9820 void(float pSelect, float pUser) Item_FloatingArea_Select = asm
9824 NOT_F pSelect, temp_0;
9826 INDIRECT_F self, _state, temp_1;
9827 EQ_F temp_1, ITEM_STATE_PRESSED, temp_1;
9828 AND temp_0, temp_1, temp_0;
9830 STORE_F self, parm0_x;
9831 STORE_F KEY_GAME, parm1_x;
9832 CALL2 Menu_CorrectSelection;
9836 void() Item_FloatingArea_Spawn = asm
9840 ADDRESS self, flag, temp_0;
9841 INDIRECT_F self, flag, temp_1;
9842 BITOR temp_1, FLAG_CHILDDRAWUPDATEONLY, temp_1;
9843 STOREP_F temp_1, temp_0;
9844 STORE_F self, parm0_x;
9845 STORE_F target, parm1_x;
9846 CALL2 String_EntityZone;
9847 ADDRESS self, _update, temp_0;
9848 STOREP_FNC Item_FloatingArea_Update, temp_0;
9849 ADDRESS self, _key, temp_0;
9850 STOREP_FNC Item_FloatingArea_Key, temp_0;
9851 ADDRESS self, _destroy, temp_0;
9852 STOREP_FNC Item_FloatingArea_Destroy, temp_0;
9853 ADDRESS self, _select, temp_0;
9854 STOREP_FNC Item_FloatingArea_Select, temp_0;
9858 float(float pKey, float pAscii) Item_SwitchButton_Key = asm
9862 INDIRECT_E self, _target, temp_0;
9865 EQ_F pKey, K_SPACE, temp_0;
9867 EQ_F pKey, K_ENTER, temp_1;
9868 OR temp_0, temp_1, temp_0;
9870 EQ_F pKey, K_MOUSE1, temp_1;
9871 OR temp_0, temp_1, temp_0;
9873 EQ_F pKey, K_RIGHTARROW, temp_1;
9874 OR temp_0, temp_1, temp_0;
9876 INDIRECT_S self, soundPressed, parm0_x;
9878 ADDRESS self, _presstime, temp_0;
9879 STOREP_F Timer_Time, temp_0;
9880 INDIRECT_E self, _target, temp_0;
9881 ADDRESS temp_0, _realValue, temp_0;
9882 INDIRECT_E self, _target, temp_1;
9883 INDIRECT_F temp_1, _realValue, temp_1;
9884 ADD_F temp_1, FILE_APPEND, temp_1;
9885 STOREP_F temp_1, temp_0;
9886 INDIRECT_E self, _target, temp_0;
9887 INDIRECT_F temp_0, _realValue, temp_0;
9888 INDIRECT_E self, _target, temp_1;
9889 INDIRECT_F temp_1, maxValue, temp_1;
9890 GT temp_0, temp_1, temp_0;
9892 INDIRECT_E self, _target, temp_0;
9893 ADDRESS temp_0, _realValue, temp_0;
9894 INDIRECT_E self, _target, temp_1;
9895 INDIRECT_F temp_1, minValue, temp_1;
9896 STOREP_F temp_1, temp_0;
9897 INDIRECT_E self, _target, parm0_x;
9898 STORE_F ITEM_DATALINK_SET, parm1_x;
9899 CALL2 Raise_DataEvent;
9900 CALL0 CtCall_Action;
9903 EQ_F pKey, K_BACKSPACE, temp_0;
9905 EQ_F pKey, K_MOUSE2, temp_1;
9906 OR temp_0, temp_1, temp_0;
9908 EQ_F pKey, K_LEFTARROW, temp_1;
9909 OR temp_0, temp_1, temp_0;
9911 INDIRECT_S self, soundPressed, parm0_x;
9913 ADDRESS self, _presstime, temp_0;
9914 STOREP_F Timer_Time, temp_0;
9915 INDIRECT_E self, _target, temp_0;
9916 ADDRESS temp_0, _realValue, temp_0;
9917 INDIRECT_E self, _target, temp_1;
9918 INDIRECT_F temp_1, _realValue, temp_1;
9919 SUB_F temp_1, FILE_APPEND, temp_1;
9920 STOREP_F temp_1, temp_0;
9921 INDIRECT_E self, _target, temp_0;
9922 INDIRECT_F temp_0, _realValue, temp_0;
9923 INDIRECT_E self, _target, temp_1;
9924 INDIRECT_F temp_1, minValue, temp_1;
9925 LT temp_0, temp_1, temp_0;
9927 INDIRECT_E self, _target, temp_0;
9928 ADDRESS temp_0, _realValue, temp_0;
9929 INDIRECT_E self, _target, temp_1;
9930 INDIRECT_F temp_1, maxValue, temp_1;
9931 STOREP_F temp_1, temp_0;
9932 INDIRECT_E self, _target, parm0_x;
9933 STORE_F ITEM_DATALINK_SET, parm1_x;
9934 CALL2 Raise_DataEvent;
9935 CALL0 CtCall_Action;
9941 void() Item_SwitchButton_Spawn = asm
9944 CALL0 Item_ValueButton_Spawn;
9945 ADDRESS self, _key, temp_0;
9946 STOREP_FNC Item_SwitchButton_Key, temp_0;
9950 float _VSB_UP_HEIGHT;
9951 float _VSB_DOWN_HEIGHT;
9952 float _VSB_PRECISION;
9953 float _VSB_MINHEIGHT;
9954 float _VSB_CLICKAREA_COLOR_x;
9955 float _VSB_CLICKAREA_COLOR_y;
9956 float _VSB_CLICKAREA_COLOR_z;
9957 vector _VSB_CLICKAREA_COLOR;
9958 float _VSB_SCOLLER_COLOR_x;
9959 float _VSB_SCOLLER_COLOR_y;
9960 float _VSB_SCOLLER_COLOR_z;
9961 vector _VSB_SCOLLER_COLOR;
9962 float _VSB_SCROLLAREA_COLOR_x;
9963 float _VSB_SCROLLAREA_COLOR_y;
9964 float _VSB_SCROLLAREA_COLOR_z;
9965 vector _VSB_SCROLLAREA_COLOR;
9966 float () _IVSB_GetSizeOfScroller;
9967 float() _IVSB_GetSizeOfScroller = asm
9969 local float lScrollerSize;
9970 local float lTotalSize;
9971 local float lVisibleSize;
9972 local float lScrollerRange;
9974 INDIRECT_E self, _target, temp_0;
9975 INDIRECT_E temp_0, _child, temp_0;
9976 INDIRECT_F temp_0, size_y, lTotalSize;
9977 INDIRECT_F self, size_y, lVisibleSize;
9978 INDIRECT_F self, size_y, temp_0;
9979 SUB_F temp_0, _VSB_UP_HEIGHT, temp_0;
9980 SUB_F temp_0, _VSB_UP_HEIGHT, lScrollerRange;
9981 MUL_F lVisibleSize, lScrollerRange, temp_0;
9982 DIV_F temp_0, lTotalSize, lScrollerSize;
9983 STORE_F _VSB_MINHEIGHT, parm0_x;
9984 STORE_F lScrollerSize, parm1_x;
9986 STORE_F return_x, lScrollerSize;
9987 RETURN lScrollerSize;
9991 void() Item_VScrollBar_Draw = asm
9994 local vector lPosition;
9997 local vector temp_2;
10000 INDIRECT_E self, _target, temp_0;
10001 EQ_E temp_0, null_entity, temp_0;
10004 INDIRECT_V self, pos_x, lPosition;
10005 INDIRECT_V self, size_x, lSize;
10006 STORE_F _VSB_UP_HEIGHT, lSize_y;
10007 STORE_V lPosition, parm0;
10008 STORE_V lSize, parm1;
10009 STORE_V _VSB_CLICKAREA_COLOR, parm2;
10010 STORE_F FILE_APPEND, parm3_x;
10011 STORE_F KEY_GAME, parm4_x;
10013 INDIRECT_F self, pos_y, temp_0;
10014 ADD_F temp_0, _VSB_UP_HEIGHT, lPosition_y;
10015 INDIRECT_F self, size_y, temp_0;
10016 SUB_F temp_0, _VSB_UP_HEIGHT, temp_0;
10017 SUB_F temp_0, _VSB_UP_HEIGHT, lSize_y;
10018 STORE_V lPosition, parm0;
10019 STORE_V lSize, parm1;
10020 STORE_V _VSB_SCROLLAREA_COLOR, parm2;
10021 STORE_F FILE_APPEND, parm3_x;
10022 STORE_F KEY_GAME, parm4_x;
10024 INDIRECT_F self, pos_y, temp_0;
10025 INDIRECT_F self, size_y, temp_1;
10026 ADD_F temp_0, temp_1, temp_0;
10027 SUB_F temp_0, _VSB_UP_HEIGHT, lPosition_y;
10028 STORE_F _VSB_UP_HEIGHT, lSize_y;
10029 STORE_V lPosition, parm0;
10030 STORE_V lSize, parm1;
10031 STORE_V _VSB_CLICKAREA_COLOR, parm2;
10032 STORE_F FILE_APPEND, parm3_x;
10033 STORE_F KEY_GAME, parm4_x;
10035 CALL0 _IVSB_GetSizeOfScroller;
10036 STORE_F return_x, lSize_y;
10037 INDIRECT_F self, pos_y, temp_0;
10038 ADD_F temp_0, _VSB_UP_HEIGHT, temp_0;
10039 INDIRECT_E self, _target, temp_1;
10040 INDIRECT_F temp_1, origin_y, temp_1;
10041 INDIRECT_F self, size_y, temp_5;
10042 SUB_F temp_5, _VSB_UP_HEIGHT, temp_5;
10043 SUB_F temp_5, _VSB_UP_HEIGHT, temp_5;
10044 SUB_F temp_5, lSize_y, temp_5;
10045 MUL_F temp_1, temp_5, temp_1;
10046 INDIRECT_E self, _target, temp_5;
10047 INDIRECT_E temp_5, _child, temp_5;
10048 INDIRECT_F temp_5, size_y, temp_5;
10049 INDIRECT_F self, size_y, temp_6;
10050 SUB_F temp_5, temp_6, temp_5;
10051 DIV_F temp_1, temp_5, temp_1;
10052 SUB_F temp_0, temp_1, lPosition_y;
10053 STORE_V lPosition, parm0;
10054 STORE_V lSize, parm1;
10055 STORE_V _VSB_SCOLLER_COLOR, parm2;
10056 STORE_F FILE_APPEND, parm3_x;
10057 STORE_F KEY_GAME, parm4_x;
10062 void () _IVSB_RangeBound;
10063 void() _IVSB_RangeBound = asm
10065 local float locked_1586;
10066 local float temp_1;
10067 local float temp_5;
10068 INDIRECT_E self, _target, locked_1586;
10069 ADDRESS locked_1586, origin_y, locked_1586;
10070 INDIRECT_E self, _target, temp_1;
10071 INDIRECT_E temp_1, _child, temp_1;
10072 INDIRECT_F temp_1, size_y, temp_1;
10073 INDIRECT_F self, size_y, temp_5;
10074 SUB_F temp_1, temp_5, temp_1;
10075 SUB_F KEY_GAME, temp_1, temp_1;
10076 INDIRECT_E self, _target, temp_5;
10077 INDIRECT_F temp_5, origin_y, temp_5;
10078 STORE_F temp_1, parm0_x;
10079 STORE_F temp_5, parm1_x;
10080 STORE_F KEY_GAME, parm2_x;
10082 STOREP_F return_x, locked_1586;
10086 void () _IVSB_ScrollUp;
10087 void() _IVSB_ScrollUp = asm
10089 local float temp_0;
10090 local float temp_1;
10091 INDIRECT_E self, _target, temp_0;
10092 ADDRESS temp_0, origin_y, temp_0;
10093 INDIRECT_E self, _target, temp_1;
10094 INDIRECT_F temp_1, origin_y, temp_1;
10095 ADD_F temp_1, SLIST_SERVERREPLYCOUNT, temp_1;
10096 STOREP_F temp_1, temp_0;
10097 CALL0 _IVSB_RangeBound;
10101 void () _IVSB_ScrollDown;
10102 void() _IVSB_ScrollDown = asm
10104 local float temp_0;
10105 local float temp_1;
10106 INDIRECT_E self, _target, temp_0;
10107 ADDRESS temp_0, origin_y, temp_0;
10108 INDIRECT_E self, _target, temp_1;
10109 INDIRECT_F temp_1, origin_y, temp_1;
10110 SUB_F temp_1, SLIST_SERVERREPLYCOUNT, temp_1;
10111 STOREP_F temp_1, temp_0;
10112 CALL0 _IVSB_RangeBound;
10116 void (float) _IVSB_MouseSelect;
10117 void(float lLevel) _IVSB_MouseSelect = asm
10119 local float lScrollerSize;
10120 local float lTotalSize;
10121 local float lVisibleSize;
10122 local float lScrollerRange;
10123 local float temp_0;
10124 local float temp_1;
10125 local float temp_5;
10126 INDIRECT_E self, _target, temp_0;
10127 INDIRECT_E temp_0, _child, temp_0;
10128 INDIRECT_F temp_0, size_y, lTotalSize;
10129 INDIRECT_F self, size_y, lVisibleSize;
10130 INDIRECT_F self, size_y, temp_0;
10131 SUB_F temp_0, _VSB_UP_HEIGHT, temp_0;
10132 SUB_F temp_0, _VSB_UP_HEIGHT, lScrollerRange;
10133 CALL0 _IVSB_GetSizeOfScroller;
10134 STORE_F return_x, lScrollerSize;
10135 SUB_F lLevel, _VSB_UP_HEIGHT, temp_0;
10136 DIV_F lScrollerSize, KEY_MENU, temp_1;
10137 SUB_F temp_0, temp_1, lLevel;
10138 INDIRECT_E self, _target, temp_0;
10139 ADDRESS temp_0, origin_y, temp_0;
10140 SUB_F lTotalSize, lVisibleSize, temp_1;
10141 MUL_F lLevel, temp_1, temp_1;
10142 SUB_F lScrollerRange, lScrollerSize, temp_5;
10143 DIV_F temp_1, temp_5, temp_1;
10144 SUB_F KEY_GAME, temp_1, temp_1;
10145 STOREP_F temp_1, temp_0;
10146 CALL0 _IVSB_RangeBound;
10150 float(float pKey, float Ascii) Item_VScrollBar_Key = asm
10152 local float lLevel;
10153 local float temp_0;
10154 local vector temp_2;
10155 local vector temp_3;
10156 INDIRECT_E self, _target, temp_0;
10157 EQ_E temp_0, null_entity, temp_0;
10160 EQ_F pKey, K_UPARROW, temp_0;
10162 CALL0 _IVSB_ScrollUp;
10163 RETURN FILE_APPEND;
10165 EQ_F pKey, K_DOWNARROW, temp_0;
10167 CALL0 _IVSB_ScrollDown;
10168 RETURN FILE_APPEND;
10170 EQ_F pKey, K_MOUSE1, temp_0;
10172 INDIRECT_V self, pos_x, temp_2;
10173 INDIRECT_V self, size_x, temp_3;
10174 STORE_V Menu_Cursor_Position, parm0;
10175 STORE_V temp_2, parm1;
10176 STORE_V temp_3, parm2;
10180 INDIRECT_F self, pos_y, temp_0;
10181 SUB_F Menu_Cursor_Position_y, temp_0, lLevel;
10182 LT lLevel, _VSB_UP_HEIGHT, temp_0;
10184 CALL0 _IVSB_ScrollUp;
10186 INDIRECT_F self, size_y, temp_0;
10187 SUB_F temp_0, _VSB_UP_HEIGHT, temp_0;
10188 GE lLevel, temp_0, temp_0;
10190 CALL0 _IVSB_ScrollDown;
10192 STORE_F lLevel, parm0_x;
10193 CALL1 _IVSB_MouseSelect;
10194 RETURN FILE_APPEND;
10196 EQ_F pKey, K_MWHEELUP, temp_0;
10198 CALL0 _IVSB_ScrollUp;
10199 RETURN FILE_APPEND;
10201 EQ_F pKey, K_MWHEELDOWN, temp_0;
10203 CALL0 _IVSB_ScrollDown;
10204 RETURN FILE_APPEND;
10209 void() Item_VScrollBar_Update = asm
10211 local float locked_1586;
10212 local float temp_1;
10213 INDIRECT_S self, target, locked_1586;
10214 EQ_S locked_1586, "", locked_1586;
10215 IFNOT locked_1586, 4;
10216 ADDRESS self, _target, locked_1586;
10217 STOREP_ENT null_entity, locked_1586;
10219 INDIRECT_S self, target, locked_1586;
10220 INDIRECT_E self, _target, temp_1;
10221 INDIRECT_S temp_1, name, temp_1;
10222 NE_S locked_1586, temp_1, locked_1586;
10223 IFNOT locked_1586, 5;
10224 ADDRESS self, _target, locked_1586;
10225 INDIRECT_S self, target, parm0_x;
10226 CALL1 Menu_GetItem;
10227 STOREP_ENT return_x, locked_1586;
10228 INDIRECT_E self, _target, locked_1586;
10229 EQ_E locked_1586, null_entity, locked_1586;
10230 IFNOT locked_1586, 2;
10232 ADDRESS self, size_y, locked_1586;
10233 INDIRECT_E self, _target, temp_1;
10234 INDIRECT_F temp_1, size_y, temp_1;
10235 STOREP_F temp_1, locked_1586;
10236 INDIRECT_F self, size_y, locked_1586;
10237 INDIRECT_E self, _target, temp_1;
10238 INDIRECT_E temp_1, _child, temp_1;
10239 INDIRECT_F temp_1, size_y, temp_1;
10240 GE locked_1586, temp_1, locked_1586;
10241 IFNOT locked_1586, 6;
10242 ADDRESS self, flag, locked_1586;
10243 INDIRECT_F self, flag, temp_1;
10244 BITOR temp_1, FLAG_HIDDEN, temp_1;
10245 STOREP_F temp_1, locked_1586;
10247 INDIRECT_F self, flag, locked_1586;
10248 BITAND locked_1586, FLAG_HIDDEN, locked_1586;
10249 IFNOT locked_1586, 5;
10250 ADDRESS self, flag, locked_1586;
10251 INDIRECT_F self, flag, temp_1;
10252 SUB_F temp_1, FLAG_HIDDEN, temp_1;
10253 STOREP_F temp_1, locked_1586;
10257 void () Item_VScrollBar_Destroy;
10258 void() Item_VScrollBar_Destroy = asm
10260 STORE_F self, parm0_x;
10261 STORE_F target, parm1_x;
10262 CALL2 String_EntityFree;
10266 void() Item_VScrollBar_Spawn = asm
10268 local float temp_0;
10269 STORE_F self, parm0_x;
10270 STORE_F target, parm1_x;
10271 CALL2 String_EntityZone;
10272 CALL0 Item_VScrollBar_Update;
10273 ADDRESS self, _update, temp_0;
10274 STOREP_FNC Item_VScrollBar_Update, temp_0;
10275 ADDRESS self, _key, temp_0;
10276 STOREP_FNC Item_VScrollBar_Key, temp_0;
10277 ADDRESS self, _draw, temp_0;
10278 STOREP_FNC Item_VScrollBar_Draw, temp_0;
10279 ADDRESS self, _destroy, temp_0;
10280 STOREP_FNC Item_VScrollBar_Destroy, temp_0;
10284 void() Item_Cinematic_Destroy = asm
10286 local float temp_0;
10287 INDIRECT_S self, normal, parm0_x;
10289 STORE_F self, parm0_x;
10290 STORE_F link, parm1_x;
10291 CALL2 String_EntityFree;
10292 STORE_F self, parm0_x;
10293 STORE_F normal, parm1_x;
10294 CALL2 String_EntityFree;
10298 void() Item_Cinematic_Init = asm
10300 local float temp_0;
10301 local float temp_1;
10302 ADDRESS self, flag, temp_0;
10303 INDIRECT_F self, flag, temp_1;
10304 BITOR temp_1, FLAG_HIDDEN, temp_1;
10305 STOREP_F temp_1, temp_0;
10306 STORE_F self, parm0_x;
10307 STORE_F link, parm1_x;
10308 CALL2 String_EntityZone;
10309 STORE_F self, parm0_x;
10310 STORE_F normal, parm1_x;
10311 CALL2 String_EntityZone;
10312 INDIRECT_S self, link, temp_0;
10313 INDIRECT_S self, normal, temp_1;
10314 STORE_F temp_0, parm0_x;
10315 STORE_F temp_1, parm1_x;
10317 ADDRESS self, _destroy, temp_0;
10318 STOREP_FNC Item_Cinematic_Destroy, temp_0;
10322 void() Item_Cinematic_Loop_Spawn = asm
10324 local float temp_0;
10325 CALL0 Item_Cinematic_Init;
10326 INDIRECT_S self, normal, parm0_x;
10327 STORE_F KEY_MENU, parm1_x;
10328 CALL2 cin_setstate;
10332 void() Item_Container_Spawn = asm
10334 local float temp_0;
10335 local float temp_1;
10336 ADDRESS self, flag, temp_0;
10337 INDIRECT_F self, flag, temp_1;
10338 BITOR temp_1, FLAG_HIDDEN, temp_1;
10339 STOREP_F temp_1, temp_0;
10343 void () Item_Custom_Spawn;
10344 void() Item_Custom_Spawn = asm
10346 local float temp_0;
10347 ADDRESS self, _reinit, temp_0;
10348 STOREP_FNC CtCall_Reinit, temp_0;
10349 ADDRESS self, _destroy, temp_0;
10350 STOREP_FNC CtCall_Destroy, temp_0;
10351 ADDRESS self, _key, temp_0;
10352 STOREP_FNC CtCall_Key, temp_0;
10353 ADDRESS self, _draw, temp_0;
10354 STOREP_FNC CtCall_Draw, temp_0;
10355 ADDRESS self, _mouseEnter, temp_0;
10356 STOREP_FNC CtCall_MouseEnter, temp_0;
10357 ADDRESS self, _mouseLeave, temp_0;
10358 STOREP_FNC CtCall_MouseLeave, temp_0;
10359 ADDRESS self, _select, temp_0;
10360 STOREP_FNC CtCall_Select, temp_0;
10361 ADDRESS self, _update, temp_0;
10362 STOREP_FNC CtCall_Update, temp_0;
10367 void() Item_Link_Update = asm
10369 local float locked_1586;
10370 local float temp_1;
10371 INDIRECT_S self, link, locked_1586;
10372 EQ_S locked_1586, "", locked_1586;
10373 IFNOT locked_1586, 4;
10374 ADDRESS self, _link, locked_1586;
10375 STOREP_ENT null_entity, locked_1586;
10377 INDIRECT_S self, link, locked_1586;
10378 INDIRECT_E self, _link, temp_1;
10379 INDIRECT_S temp_1, name, temp_1;
10380 NE_S locked_1586, temp_1, locked_1586;
10381 IFNOT locked_1586, 9;
10382 ADDRESS self, _link, locked_1586;
10383 INDIRECT_S self, link, parm0_x;
10384 CALL1 Menu_GetItem;
10385 STOREP_ENT return_x, locked_1586;
10386 ADDRESS self, flag, locked_1586;
10387 INDIRECT_F self, flag, temp_1;
10388 BITOR temp_1, FLAG_NOSELECT, temp_1;
10389 STOREP_F temp_1, locked_1586;
10393 float(float pKey, float pAscii) Item_Link_Key = asm
10395 local float temp_0;
10396 INDIRECT_E self, _link, temp_0;
10398 INDIRECT_E self, _link, parm0_x;
10399 STORE_F pKey, parm1_x;
10400 STORE_F pAscii, parm2_x;
10407 void() Item_Link_MouseEnter = asm
10409 local float temp_0;
10410 local float temp_1;
10411 INDIRECT_E self, _link, temp_0;
10413 INDIRECT_E self, _link, temp_1;
10414 INDIRECT_F temp_1, _runFlag, temp_1;
10415 BITAND temp_1, RUNFLAG_NOSELECT, temp_1;
10416 NOT_F temp_1, temp_1;
10417 AND temp_0, temp_1, temp_0;
10419 INDIRECT_E self, _link, parm0_x;
10420 STORE_F FILE_APPEND, parm1_x;
10425 float() Item_Link_IsSelected = asm
10427 local float temp_0;
10428 EQ_E Menu_ActiveItem, self, temp_0;
10430 RETURN FILE_APPEND;
10431 INDIRECT_E self, _link, temp_0;
10433 INDIRECT_E self, _link, temp_0;
10434 EQ_E Menu_ActiveItem, temp_0, temp_0;
10441 void() Item_Link_Destroy = asm
10443 STORE_F self, parm0_x;
10444 STORE_F link, parm1_x;
10445 CALL2 String_EntityFree;
10449 void() Item_Link_Init = asm
10451 local float temp_0;
10452 STORE_F self, parm0_x;
10453 STORE_F link, parm1_x;
10454 CALL2 String_EntityZone;
10455 CALL0 Item_Link_Update;
10456 ADDRESS self, _destroy, temp_0;
10457 STOREP_FNC Item_Link_Destroy, temp_0;
10458 ADDRESS self, _key, temp_0;
10459 STOREP_FNC Item_Link_Key, temp_0;
10460 ADDRESS self, _mouseEnter, temp_0;
10461 STOREP_FNC Item_Link_MouseEnter, temp_0;
10462 ADDRESS self, _update, temp_0;
10463 STOREP_FNC Item_Link_MouseEnter, temp_0;
10467 void(entity pEntity, void () pPopFunction) Menu_History_Push = asm
10469 local entity lHistory;
10470 local float temp_0;
10471 STORE_FNC Util_NullFunction, Menu_KeyHook;
10473 STORE_ENT return_x, lHistory;
10474 ADDRESS lHistory, type, temp_0;
10475 STOREP_S "MMANAGER_HISTORY", temp_0;
10476 ADDRESS lHistory, _prev, temp_0;
10477 STOREP_ENT Menu_History, temp_0;
10478 ADDRESS lHistory, _child, temp_0;
10479 STOREP_ENT Menu_ActiveItem, temp_0;
10480 ADDRESS lHistory, _parent, temp_0;
10481 STOREP_ENT Menu_ActiveWindow, temp_0;
10482 ADDRESS lHistory, _next, temp_0;
10483 STOREP_ENT pEntity, temp_0;
10484 ADDRESS lHistory, _destroy, temp_0;
10485 STOREP_FNC pPopFunction, temp_0;
10486 STORE_ENT lHistory, Menu_History;
10490 void() Menu_History_Pop = asm
10492 local entity lTemp;
10493 local float temp_0;
10494 EQ_E Menu_History, null_entity, temp_0;
10497 STORE_FNC Util_NullFunction, Menu_KeyHook;
10498 INDIRECT_E Menu_History, _child, Menu_ActiveItem;
10499 INDIRECT_E Menu_History, _parent, Menu_ActiveWindow;
10500 STORE_ENT Menu_History, lTemp;
10501 STORE_F lTemp, parm0_x;
10502 CALL1 Raise_Destroy;
10503 INDIRECT_E Menu_History, _prev, Menu_History;
10504 STORE_F lTemp, parm0_x;
10509 float(entity pEntity) Menu_History_Verify = asm
10511 local float temp_0;
10512 EQ_E Menu_History, null_entity, temp_0;
10515 INDIRECT_E Menu_History, _next, temp_0;
10516 EQ_E temp_0, pEntity, temp_0;
10518 RETURN FILE_APPEND;
10523 void() Menu_History_Clear = asm
10525 local entity lEntity;
10526 local float temp_0;
10527 STORE_ENT null_entity, lEntity;
10528 STORE_F lEntity, parm0_x;
10529 STORE_F type, parm1_x;
10530 STORE_F "MMANAGER_HISTORY", parm2_x;
10532 STORE_ENT return_x, lEntity;
10533 NE_E return_x, null_entity, temp_0;
10535 STORE_F lEntity, parm0_x;
10538 STORE_ENT null_entity, Menu_History;
10542 void (float, float) _Menu_Process_Debug_Filter;
10543 void(float pMode, float pSelectState) _Menu_Process_Debug_Filter = asm
10545 local float temp_0;
10546 local float temp_1;
10547 IF sys_debug_process, 3;
10548 STORE_F KEY_GAME, _menu_process_filtered;
10550 IFNOT sys_debug_process_filter, 3;
10551 BITAND pMode, sys_debug_process_filter, _menu_process_filtered;
10553 STORE_F FILE_APPEND, _menu_process_filtered;
10554 EQ_F _menu_process_filtered, MENU_PROCESS_MOUSE, temp_0;
10556 EQ_F pSelectState, MENU_SELECT_NEVER, temp_1;
10557 AND temp_0, temp_1, temp_0;
10559 STORE_F KEY_GAME, _menu_process_filtered;
10563 void() Menu_Process_Setup = asm
10565 STORE_V '0.000000 0.000000 0.000000', Menu_Origin;
10566 STORE_V '0.000000 0.000000 0.000000', Menu_Clip_Position;
10567 STORE_V '0.000000 0.000000 0.000000', Menu_Clip_Size;
10571 void (entity) _Menu_Env_LoadClipArea;
10572 void(entity pItem) _Menu_Env_LoadClipArea = asm
10574 local float temp_0;
10575 local float temp_1;
10576 local vector temp_2;
10577 INDIRECT_V pItem, _cache_clip_pos_x, Menu_Clip_Position;
10578 INDIRECT_V pItem, _cache_clip_size_x, Menu_Clip_Size;
10579 IFNOT sys_debug_mgfx, 1;
10580 AND sys_debug_mgfx, _menu_process_filtered, temp_0;
10582 STORE_V Menu_Clip_Position, parm0;
10584 STORE_V Menu_Clip_Size, parm0;
10585 STORE_F return_x, temp_0;
10587 STORE_F return_x, temp_1;
10588 STORE_F temp_0, return_x;
10589 STORE_F "MGFX Loaded clip area = (", parm0_x;
10590 STORE_F return_x, parm1_x;
10591 STORE_F "; ", parm2_x;
10592 STORE_F temp_1, parm3_x;
10599 void (entity) _Menu_Env_LoadOrigin;
10600 void(entity pItem) _Menu_Env_LoadOrigin = asm
10602 local float temp_0;
10603 local vector temp_2;
10604 INDIRECT_V pItem, _cache_origin_x, Menu_Origin;
10605 SUB_V Cursor_Position, Menu_Origin, Menu_Cursor_Position;
10606 IFNOT sys_debug_mgfx, 1;
10607 AND sys_debug_mgfx, _menu_process_filtered, temp_0;
10609 STORE_V Menu_Origin, parm0;
10611 STORE_F "MGFX Loaded org = ", parm0_x;
10612 STORE_F return_x, parm1_x;
10619 void (entity) _Menu_Env_Reload;
10620 void(entity pItem) _Menu_Env_Reload = asm
10622 local float locked_1585;
10623 local float temp_0;
10624 local vector temp_2;
10625 local float temp_5;
10626 INDIRECT_V pItem, _cache_origin_x, Menu_Origin;
10627 SUB_V Cursor_Position, Menu_Origin, Menu_Cursor_Position;
10628 INDIRECT_V pItem, _cache_clip_pos_x, Menu_Clip_Position;
10629 INDIRECT_V pItem, _cache_clip_size_x, Menu_Clip_Size;
10630 IFNOT sys_debug_mgfx, 1;
10631 AND sys_debug_mgfx, _menu_process_filtered, temp_0;
10633 STORE_V Menu_Origin, parm0;
10635 STORE_V Menu_Clip_Position, parm0;
10636 STORE_F return_x, temp_0;
10638 STORE_F return_x, locked_1585;
10639 STORE_F temp_0, return_x;
10640 STORE_V Menu_Clip_Size, parm0;
10641 STORE_F return_x, temp_0;
10643 STORE_F return_x, temp_5;
10644 STORE_F temp_0, return_x;
10645 STORE_F "MGFX Reloaded env for: org = ", parm0_x;
10646 STORE_F return_x, parm1_x;
10647 STORE_F "; clip area = (", parm2_x;
10648 STORE_F locked_1585, parm3_x;
10649 STORE_F "; ", parm4_x;
10650 STORE_F temp_5, parm5_x;
10657 void () _MGX_SetClipArea;
10658 void() _MGX_SetClipArea = asm
10660 local float temp_0;
10661 local float temp_1;
10662 EQ_V Menu_Clip_Position, '0.000000 0.000000 0.000000', temp_0;
10664 EQ_V Menu_Clip_Size, '0.000000 0.000000 0.000000', temp_1;
10665 AND temp_0, temp_1, temp_0;
10667 CALL0 Gfx_ResetClipArea;
10669 STORE_F Menu_Clip_Position_x, parm0_x;
10670 STORE_F Menu_Clip_Position_y, parm1_x;
10671 STORE_F Menu_Clip_Size_x, parm2_x;
10672 STORE_F Menu_Clip_Size_y, parm3_x;
10673 CALL4 Gfx_SetClipArea;
10677 void (entity) _Menu_Env_SetupClipArea;
10678 void(entity pItem) _Menu_Env_SetupClipArea = asm
10680 local vector lSize;
10682 local vector lDelta;
10683 local float temp_0;
10684 local float temp_1;
10685 local vector temp_2;
10686 INDIRECT_V pItem, pos_x, lPos;
10687 INDIRECT_V pItem, size_x, lSize;
10688 NE_V lPos, '0.000000 0.000000 0.000000', temp_0;
10690 NE_V lSize, '0.000000 0.000000 0.000000', temp_1;
10691 OR temp_0, temp_1, temp_0;
10693 NE_V Menu_Clip_Position, '0.000000 0.000000 0.000000', temp_0;
10695 NE_V Menu_Clip_Size, '0.000000 0.000000 0.000000', temp_1;
10696 OR temp_0, temp_1, temp_0;
10698 ADD_V Menu_Origin, lPos, lPos;
10699 STORE_V lPos, parm0;
10700 STORE_V Menu_Clip_Position, parm1;
10701 STORE_V Menu_Clip_Size, parm2;
10702 CALL3 Util_GetClipDelta;
10703 STORE_V return, lDelta;
10704 ADD_V lPos, lDelta, lPos;
10705 SUB_V lSize, lDelta, temp_2;
10706 STORE_V lPos, parm0;
10707 STORE_V temp_2, parm1;
10708 STORE_V Menu_Clip_Position, parm2;
10709 STORE_V Menu_Clip_Size, parm3;
10710 CALL4 Util_ClipRect;
10711 STORE_V return, lSize;
10712 STORE_V lPos, Menu_Clip_Position;
10713 STORE_V lSize, Menu_Clip_Size;
10714 ADDRESS pItem, _cache_clip_pos_x, temp_2_x;
10715 STOREP_V Menu_Clip_Position_x, temp_2;
10716 ADDRESS pItem, _cache_clip_size_x, temp_2_x;
10717 STOREP_V Menu_Clip_Size_x, temp_2;
10718 IFNOT sys_debug_mgfx, 1;
10719 AND sys_debug_mgfx, _menu_process_filtered, temp_0;
10721 INDIRECT_V pItem, pos_x, parm0;
10723 INDIRECT_V pItem, size_x, parm0;
10724 STORE_F return_x, temp_0;
10726 STORE_F return_x, temp_1;
10727 STORE_F temp_0, return_x;
10728 STORE_F "MGFX Setup clip area: (", parm0_x;
10729 STORE_F return_x, parm1_x;
10730 STORE_F "; ", parm2_x;
10731 STORE_F temp_1, parm3_x;
10733 STORE_V Menu_Clip_Position, parm0;
10735 STORE_V Menu_Clip_Size, parm0;
10736 STORE_F return_x, temp_0;
10738 STORE_F return_x, temp_1;
10739 STORE_F temp_0, return_x;
10740 STORE_F ") clipped to (", parm0_x;
10741 STORE_F return_x, parm1_x;
10742 STORE_F "; ", parm2_x;
10743 STORE_F temp_1, parm3_x;
10750 void (entity) _Menu_Env_SetupOrigin;
10751 void(entity pItem) _Menu_Env_SetupOrigin = asm
10753 local float temp_0;
10754 local vector temp_2;
10755 local vector temp_3;
10756 INDIRECT_V pItem, origin_x, temp_2;
10757 ADD_V Menu_Origin, temp_2, temp_2;
10758 INDIRECT_V pItem, pos_x, temp_3;
10759 ADD_V temp_2, temp_3, Menu_Origin;
10760 ADDRESS pItem, _cache_origin_x, temp_2_x;
10761 STOREP_V Menu_Origin_x, temp_2;
10762 IFNOT sys_debug_mgfx, 1;
10763 AND sys_debug_mgfx, _menu_process_filtered, temp_0;
10765 STORE_V Menu_Origin, parm0;
10767 STORE_F "MGFX Setup org = ", parm0_x;
10768 STORE_F return_x, parm1_x;
10775 void (entity) _Menu_ProcessRunFlag;
10776 void(entity pItem) _Menu_ProcessRunFlag = asm
10778 local entity lChild;
10779 local float temp_0;
10780 IFNOT _menu_process_filtered, 8;
10781 INDIRECT_S pItem, name, temp_0;
10782 STORE_F "R ", parm0_x;
10783 STORE_F temp_0, parm1_x;
10787 STORE_F return_x, parm0_x;
10789 STORE_F pItem, parm0_x;
10790 CALL1 _Menu_Env_SetupClipArea;
10791 STORE_F pItem, parm0_x;
10792 CALL1 Menu_SetRunFlag;
10793 STORE_F pItem, parm0_x;
10794 CALL1 _Menu_Env_SetupOrigin;
10795 INDIRECT_E pItem, _child, lChild;
10797 STORE_F pItem, parm0_x;
10798 STORE_F lChild, parm1_x;
10799 CALL2 Menu_InheritRunFlag;
10800 STORE_F lChild, parm0_x;
10801 CALL1 _Menu_ProcessRunFlag;
10802 STORE_F pItem, parm0_x;
10803 CALL1 _Menu_Env_Reload;
10804 INDIRECT_E lChild, _next, lChild;
10809 void (entity) _Menu_ProcessDraw;
10810 void(entity pItem) _Menu_ProcessDraw = asm
10812 local entity lChild;
10813 local float temp_0;
10814 IFNOT _menu_process_filtered, 8;
10815 INDIRECT_S pItem, name, temp_0;
10816 STORE_F "D ", parm0_x;
10817 STORE_F temp_0, parm1_x;
10818 STORE_F " ", parm2_x;
10820 STORE_F return_x, parm0_x;
10822 INDIRECT_F pItem, _runFlag, temp_0;
10823 BITAND temp_0, 96.000000, temp_0;
10824 NOT_F temp_0, temp_0;
10826 IFNOT _menu_process_filtered, 3;
10827 STORE_F "Failed (Not visible)
10831 IFNOT _menu_process_filtered, 3;
10835 STORE_F pItem, parm0_x;
10836 CALL1 _Menu_Env_LoadClipArea;
10837 CALL0 _MGX_SetClipArea;
10838 STORE_F pItem, parm0_x;
10840 STORE_F pItem, parm0_x;
10841 CALL1 _Menu_Env_LoadOrigin;
10842 INDIRECT_E pItem, _child, lChild;
10844 STORE_F lChild, parm0_x;
10845 CALL1 _Menu_ProcessDraw;
10846 STORE_F pItem, parm0_x;
10847 CALL1 _Menu_Env_Reload;
10848 CALL0 _MGX_SetClipArea;
10849 INDIRECT_E lChild, _next, lChild;
10854 void (entity) _Menu_ProcessUpdate;
10855 void(entity pItem) _Menu_ProcessUpdate = asm
10857 local entity lChild;
10858 local float temp_0;
10859 IFNOT _menu_process_filtered, 8;
10860 INDIRECT_S pItem, name, temp_0;
10861 STORE_F "U ", parm0_x;
10862 STORE_F temp_0, parm1_x;
10863 STORE_F " ", parm2_x;
10865 STORE_F return_x, parm0_x;
10867 INDIRECT_F pItem, _runFlag, temp_0;
10868 BITAND temp_0, RUNFLAG_CHILDDRAWONLY, temp_0;
10870 IFNOT _menu_process_filtered, 3;
10871 STORE_F "Failed (RUNFLAG_CHILDDRAWONLY)
10875 STORE_F pItem, parm0_x;
10876 CALL1 _Menu_Env_LoadClipArea;
10877 STORE_F pItem, parm0_x;
10878 CALL1 Raise_Update;
10879 INDIRECT_F pItem, _runFlag, temp_0;
10880 BITAND temp_0, RUNFLAG_HIDDEN, temp_0;
10882 IFNOT _menu_process_filtered, 3;
10883 STORE_F "Aborted branching (RUNFLAG_HIDDEN)
10887 IFNOT _menu_process_filtered, 3;
10891 STORE_F pItem, parm0_x;
10892 CALL1 _Menu_Env_LoadOrigin;
10893 INDIRECT_E pItem, _child, lChild;
10895 STORE_F lChild, parm0_x;
10896 CALL1 _Menu_ProcessUpdate;
10897 STORE_F lChild, parm0_x;
10898 CALL1 _Menu_Env_Reload;
10899 INDIRECT_E lChild, _next, lChild;
10904 void (entity, bool) _Menu_ProcessMouse;
10905 void(entity pItem, bool pSelectMode) _Menu_ProcessMouse = asm
10907 local float locked_1586;
10908 local entity lChild;
10909 local float temp_1;
10910 local float temp_5;
10911 IFNOT _menu_process_filtered, 21;
10912 STORE_F "M ", parm0_x;
10915 STORE_F "S ", parm0_x;
10918 STORE_F "A ", parm0_x;
10921 STORE_F "N ", parm0_x;
10924 IFNOT pSelectMode, -9;
10925 EQ_F pSelectMode, MENU_SELECT_ALWAYS, locked_1586;
10926 IF locked_1586, -8;
10927 EQ_F pSelectMode, MENU_SELECT_NEVER, locked_1586;
10928 IF locked_1586, -7;
10929 INDIRECT_S pItem, name, parm0_x;
10930 STORE_F " ", parm1_x;
10932 INDIRECT_F pItem, _runFlag, locked_1586;
10933 BITAND locked_1586, 96.000000, locked_1586;
10934 NOT_F locked_1586, locked_1586;
10936 IFNOT _menu_process_filtered, 3;
10937 STORE_F "Failed (Not visible)
10941 STORE_F pItem, parm0_x;
10942 CALL1 _Menu_Env_LoadClipArea;
10943 STORE_V Cursor_Position, parm0;
10944 STORE_V Menu_Clip_Position, parm1;
10945 STORE_V Menu_Clip_Size, parm2;
10948 EQ_V Menu_Clip_Position, '0.000000 0.000000 0.000000', locked_1586;
10949 IFNOT locked_1586, 2;
10950 EQ_V Menu_Clip_Size, '0.000000 0.000000 0.000000', temp_1;
10951 AND locked_1586, temp_1, locked_1586;
10952 OR return_x, locked_1586, locked_1586;
10953 IFNOT locked_1586, 34;
10954 ADDRESS pItem, _runFlag, locked_1586;
10955 INDIRECT_F pItem, _runFlag, temp_1;
10956 BITOR temp_1, RUNFLAG_MOUSEINAREA, temp_1;
10957 STOREP_F temp_1, locked_1586;
10958 INDIRECT_F pItem, _runFlag, locked_1586;
10959 BITAND locked_1586, RUNFLAG_HADMOUSE, locked_1586;
10960 NOT_F locked_1586, locked_1586;
10961 IFNOT locked_1586, 3;
10962 STORE_F pItem, parm0_x;
10963 CALL1 Menu_HasEvents;
10964 AND locked_1586, return_x, locked_1586;
10965 IFNOT locked_1586, 3;
10966 STORE_F pItem, parm0_x;
10967 CALL1 Raise_MouseEnter;
10968 NE_F pSelectMode, MENU_SELECT_NEVER, locked_1586;
10969 IFNOT locked_1586, 3;
10970 INDIRECT_F pItem, flag, temp_1;
10971 BITAND temp_1, FLAG_SEALOFFMOUSE, temp_1;
10972 AND locked_1586, temp_1, locked_1586;
10973 IFNOT locked_1586, 2;
10974 STORE_ENT null_entity, Menu_ActiveItem;
10975 EQ_F pSelectMode, MENU_SELECT_ALWAYS, locked_1586;
10977 INDIRECT_F pItem, _runFlag, temp_1;
10978 BITAND temp_1, RUNFLAG_NOSELECT, temp_1;
10979 NOT_F temp_1, temp_1;
10981 EQ_F pSelectMode, MENU_SELECT_SELECTABLE, temp_5;
10982 AND temp_1, temp_5, temp_1;
10983 OR locked_1586, temp_1, locked_1586;
10984 IFNOT locked_1586, 2;
10985 STORE_ENT pItem, Menu_ActiveItem;
10987 INDIRECT_F pItem, _runFlag, locked_1586;
10988 BITAND locked_1586, RUNFLAG_HADMOUSE, locked_1586;
10989 IFNOT locked_1586, 3;
10990 STORE_F pItem, parm0_x;
10991 CALL1 Menu_HasEvents;
10992 AND locked_1586, return_x, locked_1586;
10993 IFNOT locked_1586, 3;
10994 STORE_F pItem, parm0_x;
10995 CALL1 Raise_MouseLeave;
10996 IFNOT _menu_process_filtered, 3;
10997 STORE_F "Aborted branching (Outside the clip area)
11001 IFNOT _menu_process_filtered, 3;
11005 STORE_F pItem, parm0_x;
11006 CALL1 _Menu_Env_LoadOrigin;
11007 INDIRECT_E pItem, _child, lChild;
11009 INDIRECT_F pItem, _runFlag, locked_1586;
11010 BITAND locked_1586, RUNFLAG_CHILDDRAWUPDATEONLY, locked_1586;
11011 NOT_F locked_1586, locked_1586;
11013 INDIRECT_F pItem, _runFlag, temp_1;
11014 BITAND temp_1, RUNFLAG_CHILDDRAWONLY, temp_1;
11015 NOT_F temp_1, temp_1;
11016 OR locked_1586, temp_1, locked_1586;
11017 IFNOT locked_1586, 5;
11018 STORE_F lChild, parm0_x;
11019 STORE_F pSelectMode, parm1_x;
11020 CALL2 _Menu_ProcessMouse;
11022 STORE_F lChild, parm0_x;
11023 STORE_F MENU_SELECT_NEVER, parm1_x;
11024 CALL2 _Menu_ProcessMouse;
11025 STORE_F pItem, parm0_x;
11026 CALL1 _Menu_Env_Reload;
11027 INDIRECT_E lChild, _next, lChild;
11032 float (float) _Menu_Process_Debug_Return;
11033 float(float pRetValue) _Menu_Process_Debug_Return = asm
11035 local float temp_0;
11036 IFNOT _menu_process_filtered, 17;
11038 STORE_F "MENU_EVENT_CONTINUE
11042 STORE_F "MENU_EVENT_RAISEPARENT
11046 STORE_F "MENU_EVENT_PROCESSED
11050 IFNOT pRetValue, -9;
11051 IFNOT pRetValue, -10;
11052 EQ_F pRetValue, MENU_EVENT_RAISEPARENT, temp_0;
11054 EQ_F pRetValue, MENU_EVENT_PROCESSED, temp_0;
11060 bool (entity, float, float) _Menu_ProcessKey;
11061 bool(entity pItem, float pKey, float pAscii) _Menu_ProcessKey = asm
11063 local float lResult;
11064 local entity lChild;
11065 local float temp_0;
11066 local float temp_1;
11067 IFNOT _menu_process_filtered, 12;
11068 STORE_F pKey, parm0_x;
11070 INDIRECT_S pItem, name, temp_0;
11071 STORE_F "K ", parm0_x;
11072 STORE_F return_x, parm1_x;
11073 STORE_F " ", parm2_x;
11074 STORE_F temp_0, parm3_x;
11075 STORE_F " ", parm4_x;
11077 STORE_F return_x, parm0_x;
11079 INDIRECT_F pItem, _runFlag, temp_0;
11080 BITAND temp_0, RUNFLAG_CHILDDRAWUPDATEONLY, temp_0;
11082 INDIRECT_F pItem, _runFlag, temp_1;
11083 BITAND temp_1, RUNFLAG_CHILDDRAWONLY, temp_1;
11084 OR temp_0, temp_1, temp_0;
11086 STORE_F MENU_EVENT_CONTINUE, parm0_x;
11087 CALL1 _Menu_Process_Debug_Return;
11089 STORE_F pItem, parm0_x;
11090 CALL1 _Menu_Env_LoadClipArea;
11091 EQ_E Menu_ActiveItem, pItem, temp_0;
11093 STORE_F pItem, parm0_x;
11094 STORE_F pKey, parm1_x;
11095 STORE_F pAscii, parm2_x;
11098 STORE_F MENU_EVENT_PROCESSED, lResult;
11100 STORE_F MENU_EVENT_RAISEPARENT, lResult;
11101 STORE_F lResult, parm0_x;
11102 CALL1 _Menu_Process_Debug_Return;
11104 STORE_F pItem, parm0_x;
11105 CALL1 _Menu_Env_LoadOrigin;
11106 INDIRECT_E pItem, _child, lChild;
11108 STORE_F lChild, parm0_x;
11109 STORE_F pKey, parm1_x;
11110 STORE_F pAscii, parm2_x;
11111 CALL3 _Menu_ProcessKey;
11112 STORE_F return_x, lResult;
11113 STORE_F pItem, parm0_x;
11114 CALL1 _Menu_Env_Reload;
11115 EQ_F lResult, MENU_EVENT_PROCESSED, temp_0;
11117 STORE_F MENU_EVENT_PROCESSED, parm0_x;
11118 CALL1 _Menu_Process_Debug_Return;
11121 EQ_F lResult, MENU_EVENT_RAISEPARENT, temp_0;
11123 STORE_F pItem, parm0_x;
11124 STORE_F pKey, parm1_x;
11125 STORE_F pAscii, parm2_x;
11128 STORE_F MENU_EVENT_PROCESSED, parm0_x;
11129 CALL1 _Menu_Process_Debug_Return;
11132 STORE_F MENU_EVENT_RAISEPARENT, parm0_x;
11133 CALL1 _Menu_Process_Debug_Return;
11135 INDIRECT_E lChild, _next, lChild;
11137 STORE_F MENU_EVENT_CONTINUE, parm0_x;
11138 CALL1 _Menu_Process_Debug_Return;
11143 float(entity pItem, float pMode, float pSelectMode, float pKey, float pAscii) Menu_Process = asm
11145 local float lResult;
11146 local vector lOrigin;
11148 local vector lSize;
11149 local float temp_0;
11150 local vector temp_2;
11151 STORE_V Menu_Clip_Size, lSize;
11152 STORE_V Menu_Clip_Position, lPos;
11153 STORE_V Menu_Origin, lOrigin;
11154 STORE_F pMode, parm0_x;
11155 STORE_F pSelectMode, parm1_x;
11156 CALL2 _Menu_Process_Debug_Filter;
11157 STORE_F KEY_GAME, lResult;
11159 STORE_F pItem, parm0_x;
11160 CALL1 _Menu_ProcessRunFlag;
11162 STORE_F pItem, parm0_x;
11163 CALL1 _Menu_ProcessUpdate;
11165 STORE_F pItem, parm0_x;
11166 CALL1 _Menu_ProcessDraw;
11168 STORE_F pItem, parm0_x;
11169 STORE_F pSelectMode, parm1_x;
11170 CALL2 _Menu_ProcessMouse;
11172 STORE_F pItem, parm0_x;
11173 STORE_F pKey, parm1_x;
11174 STORE_F pAscii, parm2_x;
11175 CALL3 _Menu_ProcessKey;
11176 STORE_F return_x, lResult;
11178 EQ_F pMode, MENU_PROCESS_RUNFLAG, temp_0;
11180 EQ_F pMode, MENU_PROCESS_UPDATE, temp_0;
11182 EQ_F pMode, MENU_PROCESS_DRAW, temp_0;
11184 EQ_F pMode, MENU_PROCESS_MOUSE, temp_0;
11186 EQ_F pMode, MENU_PROCESS_KEY, temp_0;
11188 STORE_V lSize, Menu_Clip_Size;
11189 STORE_V lPos, Menu_Clip_Position;
11190 STORE_V lOrigin, Menu_Origin;
11191 SUB_V Cursor_Position, Menu_Origin, Menu_Cursor_Position;
11192 EQ_F pMode, MENU_PROCESS_DRAW, temp_0;
11194 CALL0 _MGX_SetClipArea;
11199 void() Menu_Frame = asm
11202 local float temp_0;
11203 CALL0 Sys_Debug_Frame;
11204 IFNOT sys_debug_halt, 2;
11206 CALL0 Menu_UpdateRunFlags;
11207 CALL0 Menu_Process_Setup;
11208 NE_V Cursor_Relative, '0.000000 0.000000 0.000000', temp_0;
11210 STORE_ENT Menu_ActiveItem, lOld;
11211 STORE_F Menu_ActiveWindow, parm0_x;
11212 STORE_F MENU_PROCESS_MOUSE, parm1_x;
11213 STORE_F MENU_SELECT_SELECTABLE, parm2_x;
11214 STORE_F KEY_GAME, parm3_x;
11215 STORE_F KEY_GAME, parm4_x;
11216 CALL5 Menu_Process;
11217 IF Menu_ActiveItem, 3;
11218 STORE_ENT lOld, Menu_ActiveItem;
11220 NE_E lOld, Menu_ActiveItem, temp_0;
11222 STORE_F lOld, parm0_x;
11223 STORE_F KEY_GAME, parm1_x;
11224 STORE_F FILE_APPEND, parm2_x;
11225 CALL3 Raise_Select;
11226 STORE_F Menu_ActiveItem, parm0_x;
11227 STORE_F FILE_APPEND, parm1_x;
11228 STORE_F FILE_APPEND, parm2_x;
11229 CALL3 Raise_Select;
11231 STORE_F Menu_ActiveWindow, parm0_x;
11232 STORE_F MENU_PROCESS_MOUSE, parm1_x;
11233 STORE_F MENU_SELECT_NEVER, parm2_x;
11234 STORE_F KEY_GAME, parm3_x;
11235 STORE_F KEY_GAME, parm4_x;
11236 CALL5 Menu_Process;
11237 CALL0 Menu_Process_Setup;
11238 STORE_F Menu_ActiveWindow, parm0_x;
11239 STORE_F MENU_PROCESS_UPDATE, parm1_x;
11240 STORE_F KEY_GAME, parm2_x;
11241 STORE_F KEY_GAME, parm3_x;
11242 STORE_F KEY_GAME, parm4_x;
11243 CALL5 Menu_Process;
11244 STORE_F KEY_GAME, parm0_x;
11245 CALL1 Menu_CollectGarbage;
11249 void() Menu_Draw = asm
11251 local float temp_0;
11252 IFNOT sys_debug_halt, 2;
11254 INDIRECT_F Menu_ActiveWindow, _runFlag, temp_0;
11255 BITAND temp_0, 96.000000, temp_0;
11257 CALL0 Menu_Process_Setup;
11258 STORE_F Menu_ActiveWindow, parm0_x;
11259 STORE_F MENU_PROCESS_DRAW, parm1_x;
11260 STORE_F KEY_GAME, parm2_x;
11261 STORE_F KEY_GAME, parm3_x;
11262 STORE_F KEY_GAME, parm4_x;
11263 CALL5 Menu_Process;
11264 CALL0 Sys_Debug_Draw;
11268 void(float pKey, float pAscii) Menu_Key = asm
11270 local float locked_1586;
11272 local float temp_1;
11273 IFNOT sys_debug_halt, 2;
11275 NE_FNC Menu_KeyHook, Util_NullFunction, locked_1586;
11276 IFNOT locked_1586, 5;
11277 STORE_F pKey, parm0_x;
11278 STORE_F pAscii, parm1_x;
11279 CALL2 Menu_KeyHook;
11281 LE K_MOUSE1, pKey, locked_1586;
11282 IFNOT locked_1586, 2;
11283 LE pKey, K_MOUSE10, temp_1;
11284 AND locked_1586, temp_1, locked_1586;
11285 IFNOT locked_1586, 23;
11286 STORE_ENT Menu_ActiveItem, lOld;
11287 STORE_ENT null_entity, Menu_ActiveItem;
11288 STORE_F Menu_ActiveWindow, parm0_x;
11289 STORE_F MENU_PROCESS_MOUSE, parm1_x;
11290 STORE_F MENU_SELECT_SELECTABLE, parm2_x;
11291 STORE_F KEY_GAME, parm3_x;
11292 STORE_F KEY_GAME, parm4_x;
11293 CALL5 Menu_Process;
11294 IF Menu_ActiveItem, 4;
11295 STORE_ENT lOld, Menu_ActiveItem;
11298 NE_E lOld, Menu_ActiveItem, locked_1586;
11299 IFNOT locked_1586, 9;
11300 STORE_F lOld, parm0_x;
11301 STORE_F KEY_GAME, parm1_x;
11302 STORE_F FILE_APPEND, parm2_x;
11303 CALL3 Raise_Select;
11304 STORE_F Menu_ActiveItem, parm0_x;
11305 STORE_F FILE_APPEND, parm1_x;
11306 STORE_F FILE_APPEND, parm2_x;
11307 CALL3 Raise_Select;
11308 EQ_E Menu_ActiveItem, null_entity, locked_1586;
11309 IFNOT locked_1586, 3;
11310 STORE_F KEY_GAME, parm0_x;
11311 CALL1 Menu_Reselect;
11312 INDIRECT_F Menu_ActiveItem, _runFlag, locked_1586;
11313 BITAND locked_1586, RUNFLAG_NOSELECT, locked_1586;
11314 NOT_F locked_1586, locked_1586;
11315 NOT_F locked_1586, locked_1586;
11316 IFNOT locked_1586, 2;
11317 NE_E Menu_ActiveItem, Menu_ActiveWindow, temp_1;
11318 AND locked_1586, temp_1, locked_1586;
11320 STORE_F Menu_ActiveWindow, parm0_x;
11321 STORE_F MENU_PROCESS_KEY, parm1_x;
11322 STORE_F KEY_GAME, parm2_x;
11323 STORE_F pKey, parm3_x;
11324 STORE_F pAscii, parm4_x;
11325 CALL5 Menu_Process;
11326 NE_F return_x, MENU_EVENT_PROCESSED, temp_1;
11327 OR locked_1586, temp_1, locked_1586;
11328 IFNOT locked_1586, 25;
11329 EQ_F pKey, K_ESCAPE, locked_1586;
11330 IFNOT locked_1586, 10;
11331 BITAND gamestatus, CVAR_READONLY, locked_1586;
11332 IFNOT locked_1586, 4;
11333 STORE_F " K_ESCAPE wasnt processed!
11338 STORE_F "menu_restart
11342 BITAND gamestatus, CVAR_READONLY, locked_1586;
11343 IFNOT locked_1586, 12;
11344 STORE_F pKey, parm0_x;
11346 STORE_F " Key ", parm0_x;
11347 STORE_F return_x, parm1_x;
11348 STORE_F " ('", parm2_x;
11350 STORE_F pAscii, parm0_x;
11352 STORE_F return_x, parm0_x;
11353 STORE_F "') wasn't processed!
11359 float() Menu_Toggle = asm
11361 local float temp_0;
11362 local float temp_1;
11363 BITAND gamestatus, KEY_MENU, temp_0;
11365 BITAND gamestatus, CVAR_READONLY, temp_1;
11366 OR temp_0, temp_1, temp_0;
11369 RETURN FILE_APPEND;
11375 void(entity pEntity) Raise_Reinit = asm
11377 local float locked_1586;
11379 INDIRECT_FU pEntity, _reinit, locked_1586;
11382 STORE_ENT self, lOld;
11383 STORE_ENT pEntity, self;
11384 INDIRECT_FU self, _reinit, locked_1586;
11386 STORE_ENT lOld, self;
11390 void(entity pEntity) Raise_Destroy = asm
11392 local float locked_1586;
11394 INDIRECT_FU pEntity, _destroy, locked_1586;
11397 STORE_ENT self, lOld;
11398 STORE_ENT pEntity, self;
11399 INDIRECT_FU self, _destroy, locked_1586;
11401 STORE_ENT lOld, self;
11405 bool(entity pEntity, float pKey, float pAscii) Raise_Key = asm
11407 local float locked_1586;
11408 local bool lResult;
11410 INDIRECT_FU pEntity, _key, locked_1586;
11413 STORE_ENT self, lOld;
11414 STORE_ENT pEntity, self;
11415 INDIRECT_FU self, _key, locked_1586;
11416 STORE_F pKey, parm0_x;
11417 STORE_F pAscii, parm1_x;
11419 STORE_F return_x, lResult;
11420 STORE_ENT lOld, self;
11425 void(entity pEntity) Raise_Draw = asm
11427 local float locked_1586;
11429 INDIRECT_FU pEntity, _draw, locked_1586;
11432 STORE_ENT self, lOld;
11433 STORE_ENT pEntity, self;
11434 INDIRECT_FU self, _draw, locked_1586;
11436 STORE_ENT lOld, self;
11440 void(entity pEntity) Raise_MouseEnter = asm
11442 local float locked_1586;
11444 INDIRECT_FU pEntity, _mouseEnter, locked_1586;
11447 STORE_ENT self, lOld;
11448 STORE_ENT pEntity, self;
11449 INDIRECT_FU self, _mouseEnter, locked_1586;
11451 STORE_ENT lOld, self;
11455 void(entity pEntity) Raise_MouseLeave = asm
11457 local float locked_1586;
11459 INDIRECT_FU pEntity, _mouseLeave, locked_1586;
11462 STORE_ENT self, lOld;
11463 STORE_ENT pEntity, self;
11464 INDIRECT_FU self, _mouseLeave, locked_1586;
11466 STORE_ENT lOld, self;
11470 void(entity pEntity) Raise_Update = asm
11472 local float locked_1586;
11474 INDIRECT_FU pEntity, _update, locked_1586;
11477 STORE_ENT self, lOld;
11478 STORE_ENT pEntity, self;
11479 INDIRECT_FU self, _update, locked_1586;
11481 STORE_ENT lOld, self;
11485 void(entity pEntity, float pSelect, float pUser) Raise_Select = asm
11487 local float locked_1586;
11489 INDIRECT_FU pEntity, _select, locked_1586;
11492 STORE_ENT self, lOld;
11493 STORE_ENT pEntity, self;
11494 INDIRECT_FU self, _select, locked_1586;
11495 STORE_F pSelect, parm0_x;
11496 STORE_F pUser, parm1_x;
11498 STORE_ENT lOld, self;
11502 void() CtCall_Init = asm
11504 local float locked_1586;
11505 INDIRECT_FU self, init, locked_1586;
11506 IFNOT locked_1586, 3;
11507 INDIRECT_FU self, init, locked_1586;
11512 void() CtCall_Reinit = asm
11514 local float locked_1586;
11515 INDIRECT_FU self, reinit, locked_1586;
11516 IFNOT locked_1586, 3;
11517 INDIRECT_FU self, reinit, locked_1586;
11522 void() CtCall_Destroy = asm
11524 local float locked_1586;
11525 INDIRECT_FU self, destroy, locked_1586;
11526 IFNOT locked_1586, 3;
11527 INDIRECT_FU self, destroy, locked_1586;
11532 float(float pKey, float pAscii) CtCall_Key = asm
11534 local float locked_1586;
11535 INDIRECT_FU self, key, locked_1586;
11536 IFNOT locked_1586, 6;
11537 INDIRECT_FU self, key, locked_1586;
11538 STORE_F pKey, parm0_x;
11539 STORE_F pAscii, parm1_x;
11546 void() CtCall_Draw = asm
11548 local float locked_1586;
11549 INDIRECT_FU self, draw, locked_1586;
11550 IFNOT locked_1586, 3;
11551 INDIRECT_FU self, draw, locked_1586;
11556 void() CtCall_MouseEnter = asm
11558 local float locked_1586;
11559 INDIRECT_FU self, mouseEnter, locked_1586;
11560 IFNOT locked_1586, 3;
11561 INDIRECT_FU self, mouseEnter, locked_1586;
11566 void() CtCall_MouseLeave = asm
11568 local float locked_1586;
11569 INDIRECT_FU self, mouseLeave, locked_1586;
11570 IFNOT locked_1586, 3;
11571 INDIRECT_FU self, mouseLeave, locked_1586;
11576 void() CtCall_Action = asm
11578 local float locked_1586;
11579 INDIRECT_FU self, action, locked_1586;
11580 IFNOT locked_1586, 3;
11581 INDIRECT_FU self, action, locked_1586;
11586 void() CtCall_Update = asm
11588 local float locked_1586;
11589 INDIRECT_FU self, update, locked_1586;
11590 IFNOT locked_1586, 3;
11591 INDIRECT_FU self, update, locked_1586;
11596 void(float pSelect, float pUser) CtCall_Select = asm
11598 local float locked_1586;
11599 INDIRECT_FU self, select, locked_1586;
11600 IFNOT locked_1586, 5;
11601 INDIRECT_FU self, select, locked_1586;
11602 STORE_F pSelect, parm0_x;
11603 STORE_F pUser, parm1_x;
11608 void() DefCt_Reinit = asm
11613 void() DefCt_Destroy = asm
11618 float(float pKey, float pAscii) DefCt_Key = asm
11624 void() DefCt_Draw = asm
11629 void() DefCt_MouseEnter = asm
11634 void() DefCt_MouseLeave = asm
11639 void () DefCt_Action;
11640 void() DefCt_Action = asm
11645 void(float pSelect, float pUser) DefCt_Select = asm
11650 void() DefCt_Update = asm
11655 void (float, string) _Menu_Structure_Debug;
11656 void(float pLevel, string pText) _Menu_Structure_Debug = asm
11658 local float temp_0;
11659 LE pLevel, sys_debug_structure, temp_0;
11661 STORE_F pText, parm0_x;
11666 void (float) _Menu_Select;
11667 void(float pUser) _Menu_Select = asm
11669 STORE_F Menu_ActiveItem, parm0_x;
11670 STORE_F FILE_APPEND, parm1_x;
11671 STORE_F pUser, parm2_x;
11672 CALL3 Raise_Select;
11676 entity(entity pItem) _Menu_GetParent = asm
11678 local float temp_0;
11679 INDIRECT_E pItem, _parent, temp_0;
11681 RETURN null_entity;
11682 INDIRECT_E pItem, _parent, temp_0;
11683 INDIRECT_F temp_0, flag, temp_0;
11684 BITAND temp_0, FLAG_EMBEDDED, temp_0;
11686 INDIRECT_E pItem, _parent, parm0_x;
11687 CALL1 _Menu_GetParent;
11689 INDIRECT_E pItem, _parent, temp_0;
11694 bool(entity pItem, entity pParent) _Menu_IsEmbeddedParentOf = asm
11696 local float temp_0;
11697 INDIRECT_E pItem, _parent, temp_0;
11698 EQ_E temp_0, pParent, temp_0;
11700 RETURN FILE_APPEND;
11701 INDIRECT_E pItem, _parent, temp_0;
11702 INDIRECT_F temp_0, flag, temp_0;
11703 BITAND temp_0, FLAG_EMBEDDED, temp_0;
11705 INDIRECT_E pItem, _parent, parm0_x;
11706 STORE_F pParent, parm1_x;
11707 CALL2 _Menu_IsEmbeddedParentOf;
11713 entity(entity pItem) _Menu_GetFirst = asm
11715 local float temp_0;
11716 local float temp_1;
11717 INDIRECT_F pItem, flag, temp_0;
11718 BITAND temp_0, FLAG_EMBEDDED, temp_0;
11720 INDIRECT_E pItem, _child, temp_1;
11721 AND temp_0, temp_1, temp_0;
11723 INDIRECT_E pItem, _child, parm0_x;
11724 CALL1 _Menu_GetFirst;
11730 entity(entity pItem) _Menu_GetLast = asm
11732 local entity lNode;
11733 local float temp_0;
11734 local float temp_1;
11735 INDIRECT_F pItem, flag, temp_0;
11736 BITAND temp_0, FLAG_EMBEDDED, temp_0;
11738 INDIRECT_E pItem, _child, temp_1;
11739 AND temp_0, temp_1, temp_0;
11741 INDIRECT_E pItem, _child, lNode;
11742 INDIRECT_E lNode, _next, temp_0;
11744 INDIRECT_E lNode, _next, lNode;
11746 STORE_F lNode, parm0_x;
11747 CALL1 _Menu_GetLast;
11753 entity(entity pItem) _Menu_GetNext = asm
11755 local entity lNext;
11756 local float temp_0;
11757 local float temp_1;
11758 INDIRECT_E pItem, _next, lNext;
11760 STORE_F lNext, parm0_x;
11761 CALL1 _Menu_GetFirst;
11763 INDIRECT_E pItem, _parent, temp_0;
11764 INDIRECT_F temp_0, flag, temp_0;
11765 BITAND temp_0, FLAG_EMBEDDED, temp_0;
11767 INDIRECT_E pItem, _parent, temp_1;
11768 NE_E temp_1, Menu_ActiveWindow, temp_1;
11769 AND temp_0, temp_1, temp_0;
11771 INDIRECT_E pItem, _parent, parm0_x;
11772 CALL1 _Menu_GetNext;
11775 RETURN null_entity;
11779 entity(entity pItem) _Menu_GetPrev = asm
11781 local entity lPrev;
11782 local float temp_0;
11783 local float temp_1;
11784 INDIRECT_E pItem, _prev, lPrev;
11786 STORE_F lPrev, parm0_x;
11787 CALL1 _Menu_GetLast;
11789 INDIRECT_E pItem, _parent, temp_0;
11790 INDIRECT_F temp_0, flag, temp_0;
11791 BITAND temp_0, FLAG_EMBEDDED, temp_0;
11793 INDIRECT_E pItem, _parent, temp_1;
11794 NE_E temp_1, Menu_ActiveWindow, temp_1;
11795 AND temp_0, temp_1, temp_0;
11797 INDIRECT_E pItem, _parent, parm0_x;
11798 CALL1 _Menu_GetPrev;
11801 RETURN null_entity;
11805 void() _Menu_SelectNext = asm
11807 local float locked_1586;
11808 local entity lTemp;
11809 local float temp_1;
11810 IF Menu_ActiveItem, 5;
11811 STORE_F FILE_APPEND, parm0_x;
11812 STORE_F "_SelectNext: Bad Menu_ActiveItem!
11814 CALL2 _Menu_Structure_Debug;
11816 STORE_ENT Menu_ActiveItem, lTemp;
11817 STORE_F lTemp, parm0_x;
11818 CALL1 _Menu_GetNext;
11819 STORE_ENT return_x, lTemp;
11820 NE_E return_x, null_entity, locked_1586;
11821 IFNOT locked_1586, 15;
11822 INDIRECT_F lTemp, _runFlag, locked_1586;
11823 BITAND locked_1586, RUNFLAG_NOSELECT, locked_1586;
11824 IF locked_1586, 11;
11825 STORE_ENT lTemp, Menu_ActiveItem;
11826 INDIRECT_S lTemp, name, locked_1586;
11827 STORE_F "_SelectNext: ", parm0_x;
11828 STORE_F locked_1586, parm1_x;
11832 STORE_F FILE_APPEND, parm0_x;
11833 STORE_F return_x, parm1_x;
11834 CALL2 _Menu_Structure_Debug;
11837 STORE_ENT Menu_ActiveItem, lTemp;
11838 STORE_F lTemp, parm0_x;
11839 CALL1 _Menu_GetPrev;
11841 STORE_F lTemp, parm0_x;
11842 STORE_F return_x, locked_1586;
11843 CALL1 _Menu_GetPrev;
11844 STORE_F return_x, temp_1;
11845 STORE_F locked_1586, return_x;
11846 STORE_ENT temp_1, lTemp;
11848 NE_E lTemp, Menu_ActiveItem, locked_1586;
11849 IFNOT locked_1586, 18;
11850 INDIRECT_F lTemp, _runFlag, locked_1586;
11851 BITAND locked_1586, RUNFLAG_NOSELECT, locked_1586;
11852 IF locked_1586, 11;
11853 STORE_ENT lTemp, Menu_ActiveItem;
11854 INDIRECT_S lTemp, name, locked_1586;
11855 STORE_F "_SelectNext after loop: ", parm0_x;
11856 STORE_F locked_1586, parm1_x;
11860 STORE_F FILE_APPEND, parm0_x;
11861 STORE_F return_x, parm1_x;
11862 CALL2 _Menu_Structure_Debug;
11864 STORE_F lTemp, parm0_x;
11865 CALL1 _Menu_GetNext;
11866 STORE_ENT return_x, lTemp;
11871 void() _Menu_SelectPrev = asm
11873 local float locked_1586;
11874 local entity lTemp;
11875 local float temp_1;
11876 IF Menu_ActiveItem, 5;
11877 STORE_F FILE_APPEND, parm0_x;
11878 STORE_F "_SelectPrev: Bad Menu_ActiveItem!
11880 CALL2 _Menu_Structure_Debug;
11882 STORE_ENT Menu_ActiveItem, lTemp;
11883 STORE_F lTemp, parm0_x;
11884 CALL1 _Menu_GetPrev;
11885 STORE_ENT return_x, lTemp;
11886 NE_E return_x, null_entity, locked_1586;
11887 IFNOT locked_1586, 15;
11888 INDIRECT_F lTemp, _runFlag, locked_1586;
11889 BITAND locked_1586, RUNFLAG_NOSELECT, locked_1586;
11890 IF locked_1586, 11;
11891 STORE_ENT lTemp, Menu_ActiveItem;
11892 INDIRECT_S lTemp, name, locked_1586;
11893 STORE_F "_SelectPrev: ", parm0_x;
11894 STORE_F locked_1586, parm1_x;
11898 STORE_F FILE_APPEND, parm0_x;
11899 STORE_F return_x, parm1_x;
11900 CALL2 _Menu_Structure_Debug;
11903 STORE_ENT Menu_ActiveItem, lTemp;
11904 STORE_F lTemp, parm0_x;
11905 CALL1 _Menu_GetNext;
11907 STORE_F lTemp, parm0_x;
11908 STORE_F return_x, locked_1586;
11909 CALL1 _Menu_GetNext;
11910 STORE_F return_x, temp_1;
11911 STORE_F locked_1586, return_x;
11912 STORE_ENT temp_1, lTemp;
11914 NE_E lTemp, Menu_ActiveItem, locked_1586;
11915 IFNOT locked_1586, 18;
11916 INDIRECT_F lTemp, _runFlag, locked_1586;
11917 BITAND locked_1586, RUNFLAG_NOSELECT, locked_1586;
11918 IF locked_1586, 11;
11919 STORE_ENT lTemp, Menu_ActiveItem;
11920 INDIRECT_S lTemp, name, locked_1586;
11921 STORE_F "_SelectPrev after loop: ", parm0_x;
11922 STORE_F locked_1586, parm1_x;
11926 STORE_F FILE_APPEND, parm0_x;
11927 STORE_F return_x, parm1_x;
11928 CALL2 _Menu_Structure_Debug;
11930 STORE_F lTemp, parm0_x;
11931 CALL1 _Menu_GetPrev;
11932 STORE_ENT return_x, lTemp;
11937 float() _Menu_SelectUp = asm
11939 local entity lNode;
11940 local entity lParent;
11941 local entity lSelected;
11942 local float temp_0;
11943 STORE_ENT Menu_ActiveItem, lSelected;
11945 STORE_F FILE_APPEND, parm0_x;
11946 STORE_F "_SelectUp: Bad Menu_ActiveItem!
11948 CALL2 _Menu_Structure_Debug;
11950 EQ_E lSelected, Menu_ActiveWindow, temp_0;
11952 STORE_F KEY_MENU, parm0_x;
11953 STORE_F "_SelectUp: Selecting up current active window..
11955 CALL2 _Menu_Structure_Debug;
11956 EQ_E Menu_History, null_entity, temp_0;
11958 STORE_F KEY_MENU, parm0_x;
11959 STORE_F "_SelectUp: Empty history -> toggling menu..
11961 CALL2 _Menu_Structure_Debug;
11964 STORE_F KEY_GAME, parm0_x;
11965 CALL1 Menu_Reselect;
11966 RETURN FILE_APPEND;
11967 STORE_F KEY_MENU, parm0_x;
11968 STORE_F "_SelectUp: Popping history..
11970 CALL2 _Menu_Structure_Debug;
11971 CALL0 Menu_History_Pop;
11972 STORE_F lSelected, parm0_x;
11973 CALL1 _Menu_GetParent;
11974 STORE_ENT return_x, lParent;
11976 STORE_F KEY_MENU, parm0_x;
11977 STORE_F "_SelectUp: No parent and not active window!
11979 CALL2 _Menu_Structure_Debug;
11981 INDIRECT_F lParent, _runFlag, temp_0;
11982 BITAND temp_0, RUNFLAG_NOSELECT, temp_0;
11984 STORE_ENT lParent, Menu_ActiveItem;
11985 INDIRECT_S lParent, name, temp_0;
11986 STORE_F "_SelectUp: first parent: ", parm0_x;
11987 STORE_F temp_0, parm1_x;
11991 STORE_F FILE_APPEND, parm0_x;
11992 STORE_F return_x, parm1_x;
11993 CALL2 _Menu_Structure_Debug;
11994 RETURN FILE_APPEND;
11995 EQ_E lParent, Menu_ActiveWindow, temp_0;
11997 STORE_ENT Menu_ActiveWindow, Menu_ActiveItem;
11998 INDIRECT_S Menu_ActiveItem, name, temp_0;
11999 STORE_F "_SelectUp: select up parent: ", parm0_x;
12000 STORE_F temp_0, parm1_x;
12004 STORE_F KEY_MENU, parm0_x;
12005 STORE_F return_x, parm1_x;
12006 CALL2 _Menu_Structure_Debug;
12007 CALL0 _Menu_SelectUp;
12009 RETURN FILE_APPEND;
12010 STORE_ENT lSelected, Menu_ActiveItem;
12013 INDIRECT_E lParent, _parent, temp_0;
12015 STORE_F FILE_APPEND, parm0_x;
12016 STORE_F "_SelectUp: No parent of parent and not active window!
12018 CALL2 _Menu_Structure_Debug;
12020 STORE_F lParent, parm0_x;
12021 CALL1 _Menu_GetParent;
12022 STORE_ENT return_x, Menu_ActiveItem;
12023 INDIRECT_S Menu_ActiveItem, name, temp_0;
12024 STORE_F "_SelectUp: SelectDown on parent of parent '", parm0_x;
12025 STORE_F temp_0, parm1_x;
12029 STORE_F KEY_MENU, parm0_x;
12030 STORE_F return_x, parm1_x;
12031 CALL2 _Menu_Structure_Debug;
12032 CALL0 _Menu_SelectDown;
12033 STORE_ENT Menu_ActiveItem, lNode;
12035 INDIRECT_E lNode, _parent, temp_0;
12036 EQ_E temp_0, lParent, temp_0;
12038 STORE_F lSelected, parm0_x;
12039 CALL1 _Menu_GetParent;
12040 STORE_ENT return_x, Menu_ActiveItem;
12041 CALL0 _Menu_SelectUp;
12043 RETURN FILE_APPEND;
12044 STORE_ENT lSelected, Menu_ActiveItem;
12046 INDIRECT_E lNode, _parent, lNode;
12048 RETURN FILE_APPEND;
12052 void (entity) _Menu_PrintRunFlag;
12053 float() _Menu_SelectDown = asm
12055 local entity lChild;
12056 local entity lParent;
12057 local float temp_0;
12058 STORE_ENT Menu_ActiveItem, lParent;
12060 STORE_F FILE_APPEND, parm0_x;
12061 STORE_F "_SelectDown: Bad Menu_ActiveItem!
12063 CALL2 _Menu_Structure_Debug;
12065 INDIRECT_E lParent, _child, parm0_x;
12066 CALL1 _Menu_GetFirst;
12067 STORE_ENT return_x, lChild;
12069 INDIRECT_F lChild, _runFlag, temp_0;
12070 BITAND temp_0, RUNFLAG_NOSELECT, temp_0;
12072 STORE_ENT lChild, Menu_ActiveItem;
12073 STORE_F lChild, parm0_x;
12074 CALL1 _Menu_PrintRunFlag;
12075 INDIRECT_S lChild, name, temp_0;
12076 STORE_F "_SelectDown: ", parm0_x;
12077 STORE_F temp_0, parm1_x;
12081 STORE_F FILE_APPEND, parm0_x;
12082 STORE_F return_x, parm1_x;
12083 CALL2 _Menu_Structure_Debug;
12084 RETURN FILE_APPEND;
12085 STORE_F lChild, parm0_x;
12086 CALL1 _Menu_GetNext;
12087 STORE_ENT return_x, lChild;
12089 INDIRECT_E lParent, _child, parm0_x;
12090 CALL1 _Menu_GetFirst;
12091 STORE_ENT return_x, lChild;
12093 INDIRECT_F lChild, flag, temp_0;
12094 BITAND temp_0, FLAG_EMBEDDED, temp_0;
12096 STORE_ENT lChild, Menu_ActiveItem;
12097 INDIRECT_S Menu_ActiveItem, name, temp_0;
12098 STORE_F "_SelectDown: Try child: ", parm0_x;
12099 STORE_F temp_0, parm1_x;
12103 STORE_F KEY_MENU, parm0_x;
12104 STORE_F return_x, parm1_x;
12105 CALL2 _Menu_Structure_Debug;
12106 CALL0 _Menu_SelectDown;
12108 RETURN FILE_APPEND;
12109 STORE_F lChild, parm0_x;
12110 CALL1 _Menu_GetNext;
12111 STORE_ENT return_x, lChild;
12113 STORE_ENT lParent, Menu_ActiveItem;
12118 void() _Menu_Reselect = asm
12120 STORE_ENT Menu_ActiveWindow, Menu_ActiveItem;
12121 CALL0 _Menu_SelectDown;
12125 void(float pUser) Menu_SelectNext = asm
12127 STORE_F Menu_ActiveItem, parm0_x;
12128 STORE_F KEY_GAME, parm1_x;
12129 STORE_F pUser, parm2_x;
12130 CALL3 Raise_Select;
12131 CALL0 _Menu_SelectNext;
12132 STORE_F Menu_ActiveItem, parm0_x;
12133 STORE_F FILE_APPEND, parm1_x;
12134 STORE_F pUser, parm2_x;
12135 CALL3 Raise_Select;
12139 void(float pUser) Menu_SelectPrev = asm
12141 STORE_F Menu_ActiveItem, parm0_x;
12142 STORE_F KEY_GAME, parm1_x;
12143 STORE_F pUser, parm2_x;
12144 CALL3 Raise_Select;
12145 CALL0 _Menu_SelectPrev;
12146 STORE_F Menu_ActiveItem, parm0_x;
12147 STORE_F FILE_APPEND, parm1_x;
12148 STORE_F pUser, parm2_x;
12149 CALL3 Raise_Select;
12153 float(float pUser) Menu_SelectUp = asm
12156 STORE_ENT Menu_ActiveItem, lOld;
12157 CALL0 _Menu_SelectUp;
12158 IFNOT return_x, 10;
12159 STORE_F lOld, parm0_x;
12160 STORE_F KEY_GAME, parm1_x;
12161 STORE_F pUser, parm2_x;
12162 CALL3 Raise_Select;
12163 STORE_F Menu_ActiveItem, parm0_x;
12164 STORE_F FILE_APPEND, parm1_x;
12165 STORE_F pUser, parm2_x;
12166 CALL3 Raise_Select;
12167 RETURN FILE_APPEND;
12172 float(float pUser) Menu_SelectDown = asm
12175 STORE_ENT Menu_ActiveItem, lOld;
12176 CALL0 _Menu_SelectDown;
12177 IFNOT return_x, 10;
12178 STORE_F lOld, parm0_x;
12179 STORE_F KEY_GAME, parm1_x;
12180 STORE_F pUser, parm2_x;
12181 CALL3 Raise_Select;
12182 STORE_F Menu_ActiveItem, parm0_x;
12183 STORE_F FILE_APPEND, parm1_x;
12184 STORE_F pUser, parm2_x;
12185 CALL3 Raise_Select;
12186 RETURN FILE_APPEND;
12191 void(entity pItem, bool pUser) Menu_Select = asm
12193 local float temp_0;
12194 STORE_F Menu_ActiveItem, parm0_x;
12195 STORE_F KEY_GAME, parm1_x;
12196 STORE_F pUser, parm2_x;
12197 CALL3 Raise_Select;
12198 INDIRECT_S pItem, name, temp_0;
12199 STORE_F "Menu_Select: ", parm0_x;
12200 STORE_F temp_0, parm1_x;
12204 STORE_F FILE_APPEND, parm0_x;
12205 STORE_F return_x, parm1_x;
12206 CALL2 _Menu_Structure_Debug;
12207 STORE_ENT pItem, Menu_ActiveItem;
12208 STORE_F Menu_ActiveItem, parm0_x;
12209 STORE_F FILE_APPEND, parm1_x;
12210 STORE_F pUser, parm2_x;
12211 CALL3 Raise_Select;
12215 void(entity pItem, bool pUser) Menu_CorrectSelection = asm
12217 local float temp_0;
12218 NE_E Menu_ActiveItem, pItem, temp_0;
12220 STORE_F pItem, parm0_x;
12221 STORE_F pUser, parm1_x;
12226 void(float pUser) Menu_Reselect = asm
12228 STORE_F Menu_ActiveItem, parm0_x;
12229 STORE_F KEY_GAME, parm1_x;
12230 STORE_F pUser, parm2_x;
12231 CALL3 Raise_Select;
12232 CALL0 _Menu_Reselect;
12233 STORE_F Menu_ActiveItem, parm0_x;
12234 STORE_F FILE_APPEND, parm1_x;
12235 STORE_F pUser, parm2_x;
12236 CALL3 Raise_Select;
12240 void(entity pMenu, float pMakeActive, float pUser) Menu_JumpToWindow = asm
12242 local float temp_0;
12243 STORE_F Menu_ActiveItem, parm0_x;
12244 STORE_F KEY_GAME, parm1_x;
12245 STORE_F pUser, parm2_x;
12246 CALL3 Raise_Select;
12247 INDIRECT_E pMenu, _child, temp_0;
12249 INDIRECT_S pMenu, name, temp_0;
12250 STORE_F "Cant jump to ", parm0_x;
12251 STORE_F temp_0, parm1_x;
12255 IFNOT pMakeActive, 5;
12256 STORE_F pMenu, parm0_x;
12257 STORE_F Util_NullFunction, parm1_x;
12258 CALL2 Menu_History_Push;
12259 STORE_ENT pMenu, Menu_ActiveWindow;
12260 STORE_ENT pMenu, Menu_ActiveItem;
12261 CALL0 _Menu_SelectDown;
12263 INDIRECT_S pMenu, name, temp_0;
12264 STORE_F "Couldn't jump to ", parm0_x;
12265 STORE_F temp_0, parm1_x;
12269 STORE_F Menu_ActiveItem, parm0_x;
12270 STORE_F FILE_APPEND, parm1_x;
12271 STORE_F pUser, parm2_x;
12272 CALL3 Raise_Select;
12276 entity(entity pOrigin, string pName, bool pThrow) Menu_GetItemEx = asm
12278 local float lCounter;
12279 local float lCount;
12280 local string lToken;
12281 local string lFirstTwo;
12282 local entity lItem;
12283 local float temp_0;
12284 local float temp_1;
12285 STORE_F pName, parm0_x;
12286 STORE_F KEY_GAME, parm1_x;
12287 STORE_F KEY_MENU, parm2_x;
12289 STORE_S return_x, lFirstTwo;
12290 EQ_S lFirstTwo, "::", temp_0;
12292 STORE_F pName, parm0_x;
12293 STORE_F KEY_MENU, parm1_x;
12294 STORE_F 100000.000000, parm2_x;
12296 STORE_F null_entity, parm0_x;
12297 STORE_F name, parm1_x;
12298 STORE_F return_x, parm2_x;
12300 STORE_ENT return_x, lItem;
12302 EQ_S lFirstTwo, "##", temp_0;
12304 STORE_ENT pOrigin, lItem;
12305 STORE_F pName, parm0_x;
12306 STORE_F KEY_MENU, parm1_x;
12307 STORE_F 100000.000000, parm2_x;
12309 STORE_F return_x, parm0_x;
12311 STORE_F return_x, lCount;
12312 STORE_F KEY_GAME, lCounter;
12313 LT lCounter, lCount, temp_0;
12315 AND temp_0, lItem, temp_0;
12317 STORE_F lCounter, parm0_x;
12319 STORE_S return_x, lToken;
12320 EQ_S lToken, "up", temp_0;
12322 INDIRECT_E lItem, _parent, lItem;
12324 EQ_S lToken, "down", temp_0;
12326 INDIRECT_E lItem, _child, lItem;
12328 EQ_S lToken, "next", temp_0;
12330 INDIRECT_E lItem, _next, lItem;
12332 EQ_S lToken, "prev", temp_0;
12334 INDIRECT_E lItem, _prev, lItem;
12336 STORE_F "Bad direction link(bad token): '", parm0_x;
12337 STORE_F pName, parm1_x;
12338 STORE_F "'!", parm2_x;
12340 ADD_F lCounter, FILE_APPEND, lCounter;
12343 STORE_ENT null_entity, lItem;
12344 NOT_ENT lItem, temp_0;
12346 INDIRECT_E pOrigin, _parent, pOrigin;
12347 NE_E pOrigin, null_entity, temp_1;
12348 AND temp_0, temp_1, temp_0;
12350 INDIRECT_S pOrigin, name, parm0_x;
12351 STORE_F "::", parm1_x;
12352 STORE_F pName, parm2_x;
12354 STORE_F null_entity, parm0_x;
12355 STORE_F name, parm1_x;
12356 STORE_F return_x, parm2_x;
12358 STORE_ENT return_x, lItem;
12361 STORE_F null_entity, parm0_x;
12362 STORE_F name, parm1_x;
12363 STORE_F pName, parm2_x;
12365 STORE_ENT return_x, lItem;
12366 EQ_E lItem, null_entity, temp_0;
12368 AND temp_0, pThrow, temp_0;
12370 STORE_F "Couldn't find item '", parm0_x;
12371 STORE_F pName, parm1_x;
12372 STORE_F "'!", parm2_x;
12378 entity(entity pOrigin, string pName, bool pThrow) Menu_GetChildEx = asm
12380 local entity lItem;
12381 local float temp_0;
12383 INDIRECT_S pOrigin, name, parm0_x;
12384 STORE_F "::", parm1_x;
12385 STORE_F pName, parm2_x;
12387 STORE_F null_entity, parm0_x;
12388 STORE_F name, parm1_x;
12389 STORE_F return_x, parm2_x;
12391 STORE_ENT return_x, lItem;
12393 STORE_F null_entity, parm0_x;
12394 STORE_F name, parm1_x;
12395 STORE_F pName, parm2_x;
12397 STORE_ENT return_x, lItem;
12398 EQ_E lItem, null_entity, temp_0;
12400 AND temp_0, pThrow, temp_0;
12402 STORE_F "Couldn't find item '", parm0_x;
12403 STORE_F pName, parm1_x;
12404 STORE_F "'!", parm2_x;
12410 entity(string pName) Menu_GetItem = asm
12412 STORE_F self, parm0_x;
12413 STORE_F pName, parm1_x;
12414 STORE_F FILE_APPEND, parm2_x;
12415 CALL3 Menu_GetItemEx;
12420 entity(string pName) Menu_GetChild = asm
12422 STORE_F self, parm0_x;
12423 STORE_F pName, parm1_x;
12424 STORE_F FILE_APPEND, parm2_x;
12425 CALL3 Menu_GetChildEx;
12430 void(entity pWindow) Menu_EmptyWindow = asm
12432 local entity lChild;
12433 local float temp_0;
12434 INDIRECT_E pWindow, _child, lChild;
12436 STORE_F lChild, parm0_x;
12437 CALL1 Menu_EmptyWindow;
12438 STORE_F lChild, parm0_x;
12439 CALL1 Raise_Destroy;
12440 STORE_F lChild, parm0_x;
12442 INDIRECT_E lChild, _next, lChild;
12444 ADDRESS pWindow, _child, temp_0;
12445 STOREP_ENT null_entity, temp_0;
12449 void(entity pEntity) Menu_RemoveItem = asm
12451 local entity lParent;
12452 local float temp_0;
12453 INDIRECT_E pEntity, _parent, lParent;
12454 STORE_F pEntity, parm0_x;
12455 CALL1 Menu_EmptyWindow;
12456 STORE_F pEntity, parm0_x;
12457 CALL1 Raise_Destroy;
12458 STORE_F pEntity, parm0_x;
12461 STORE_F lParent, parm0_x;
12462 CALL1 Menu_LinkChildren;
12466 void(entity pItem) _Menu_PrintRunFlag = asm
12468 local float temp_0;
12469 IFNOT sys_debug_runflag, 48;
12470 INDIRECT_S pItem, name, temp_0;
12471 STORE_F " ", parm0_x;
12472 STORE_F temp_0, parm1_x;
12473 STORE_F " Runflags: ", parm2_x;
12475 INDIRECT_F pItem, _runFlag, temp_0;
12476 BITAND temp_0, RUNFLAG_TEMPLATE, temp_0;
12478 STORE_F "TEMPLATE ", parm0_x;
12480 INDIRECT_F pItem, _runFlag, temp_0;
12481 BITAND temp_0, RUNFLAG_MOUSEINAREA, temp_0;
12483 STORE_F "MOUSEINAREA ", parm0_x;
12485 INDIRECT_F pItem, _runFlag, temp_0;
12486 BITAND temp_0, RUNFLAG_HADMOUSE, temp_0;
12488 STORE_F "HADMOUSE ", parm0_x;
12490 INDIRECT_F pItem, _runFlag, temp_0;
12491 BITAND temp_0, RUNFLAG_CHILDDRAWONLY, temp_0;
12493 STORE_F "CHILDDRAWONLY ", parm0_x;
12495 INDIRECT_F pItem, _runFlag, temp_0;
12496 BITAND temp_0, RUNFLAG_CHILDDRAWUPDATEONLY, temp_0;
12498 STORE_F "CHILDDRAWUPDATEONLY ", parm0_x;
12500 INDIRECT_F pItem, _runFlag, temp_0;
12501 BITAND temp_0, RUNFLAG_HIDDEN, temp_0;
12503 STORE_F "HIDDEN ", parm0_x;
12505 INDIRECT_F pItem, _runFlag, temp_0;
12506 BITAND temp_0, RUNFLAG_CLIPPED, temp_0;
12508 STORE_F "CLIPPED ", parm0_x;
12510 INDIRECT_F pItem, _runFlag, temp_0;
12511 BITAND temp_0, RUNFLAG_NOSELECT, temp_0;
12513 STORE_F "NOSELECT ", parm0_x;
12521 void(entity pItem) Menu_SetRunFlag = asm
12523 local float lRunFlag;
12525 local float temp_0;
12526 local float temp_1;
12527 local float temp_5;
12528 INDIRECT_F pItem, flag, lFlag;
12529 BITAND lFlag, FLAG_TEMPLATE, temp_0;
12531 ADDRESS pItem, _runFlag, temp_0;
12532 INDIRECT_F pItem, _runFlag, temp_1;
12533 BITOR temp_1, RUNFLAG_TEMPLATE, temp_1;
12534 STOREP_F temp_1, temp_0;
12535 INDIRECT_F pItem, _runFlag, lRunFlag;
12536 BITAND lRunFlag, RUNFLAG_MOUSEINAREA, temp_0;
12538 ADDRESS pItem, _runFlag, temp_0;
12539 SUB_F lRunFlag, RUNFLAG_MOUSEINAREA, temp_1;
12540 BITOR temp_1, RUNFLAG_HADMOUSE, temp_1;
12541 STOREP_F temp_1, temp_0;
12542 EQ_V Menu_Clip_Size, '0.000000 0.000000 0.000000', temp_0;
12544 NE_V Menu_Clip_Position, '0.000000 0.000000 0.000000', temp_1;
12545 AND temp_0, temp_1, temp_0;
12547 ADDRESS pItem, _runFlag, temp_0;
12548 INDIRECT_F pItem, _runFlag, temp_1;
12549 BITOR temp_1, RUNFLAG_CLIPPED, temp_1;
12550 STOREP_F temp_1, temp_0;
12551 INDIRECT_F pItem, _runFlag, lRunFlag;
12552 BITAND lFlag, FLAG_HIDDEN, temp_0;
12554 BITAND lRunFlag, RUNFLAG_TEMPLATE, temp_1;
12555 OR temp_0, temp_1, temp_0;
12557 BITAND lFlag, FLAG_SERVERONLY, temp_1;
12559 BITAND gamestatus, FILE_APPEND, temp_5;
12560 NOT_F temp_5, temp_5;
12561 AND temp_1, temp_5, temp_1;
12562 OR temp_0, temp_1, temp_0;
12564 BITAND lFlag, FLAG_CONNECTEDONLY, temp_1;
12566 BITAND gamestatus, KEY_MENU, temp_5;
12567 NOT_F temp_5, temp_5;
12568 AND temp_1, temp_5, temp_1;
12569 OR temp_0, temp_1, temp_0;
12571 BITAND lFlag, FLAG_DEVELOPERONLY, temp_1;
12573 BITAND gamestatus, CVAR_READONLY, temp_5;
12574 NOT_F temp_5, temp_5;
12575 AND temp_1, temp_5, temp_1;
12576 OR temp_0, temp_1, temp_0;
12578 ADDRESS pItem, _runFlag, temp_0;
12579 BITOR lRunFlag, RUNFLAG_HIDDEN, temp_1;
12580 STOREP_F temp_1, temp_0;
12581 INDIRECT_F pItem, _runFlag, lRunFlag;
12582 BITAND lFlag, FLAG_NOSELECT, temp_0;
12584 BITAND lFlag, FLAG_DRAWONLY, temp_1;
12585 OR temp_0, temp_1, temp_0;
12587 BITAND lFlag, FLAG_DRAWUPDATEONLY, temp_1;
12588 OR temp_0, temp_1, temp_0;
12590 BITAND lFlag, FLAG_EMBEDDED, temp_1;
12591 OR temp_0, temp_1, temp_0;
12593 BITAND lRunFlag, RUNFLAG_TEMPLATE, temp_1;
12594 OR temp_0, temp_1, temp_0;
12596 BITAND lRunFlag, RUNFLAG_HIDDEN, temp_1;
12597 OR temp_0, temp_1, temp_0;
12599 BITAND lRunFlag, RUNFLAG_CHILDDRAWONLY, temp_1;
12600 OR temp_0, temp_1, temp_0;
12602 BITAND lRunFlag, RUNFLAG_CHILDDRAWUPDATEONLY, temp_1;
12603 OR temp_0, temp_1, temp_0;
12605 ADDRESS pItem, _runFlag, temp_0;
12606 BITOR lRunFlag, RUNFLAG_NOSELECT, temp_1;
12607 STOREP_F temp_1, temp_0;
12608 STORE_F pItem, parm0_x;
12609 CALL1 _Menu_PrintRunFlag;
12613 void(entity pParent, entity pItem) Menu_InheritRunFlag = asm
12615 local float temp_0;
12616 local float temp_1;
12617 ADDRESS pItem, _runFlag, temp_0;
12618 INDIRECT_F pItem, _runFlag, temp_1;
12619 BITAND temp_1, 3588.000000, temp_1;
12620 STOREP_F temp_1, temp_0;
12621 INDIRECT_F pParent, _runFlag, temp_0;
12622 BITAND temp_0, RUNFLAG_TEMPLATE, temp_0;
12624 ADDRESS pItem, _runFlag, temp_0;
12625 INDIRECT_F pItem, _runFlag, temp_1;
12626 BITOR temp_1, RUNFLAG_TEMPLATE, temp_1;
12627 STOREP_F temp_1, temp_0;
12628 INDIRECT_F pParent, _runFlag, temp_0;
12629 BITAND temp_0, RUNFLAG_CHILDDRAWONLY, temp_0;
12631 INDIRECT_F pParent, flag, temp_1;
12632 BITAND temp_1, FLAG_CHILDDRAWONLY, temp_1;
12633 OR temp_0, temp_1, temp_0;
12635 ADDRESS pItem, _runFlag, temp_0;
12636 INDIRECT_F pItem, _runFlag, temp_1;
12637 BITOR temp_1, RUNFLAG_CHILDDRAWONLY, temp_1;
12638 STOREP_F temp_1, temp_0;
12639 INDIRECT_F pParent, _runFlag, temp_0;
12640 BITAND temp_0, RUNFLAG_CHILDDRAWUPDATEONLY, temp_0;
12642 INDIRECT_F pParent, flag, temp_1;
12643 BITAND temp_1, FLAG_CHILDDRAWUPDATEONLY, temp_1;
12644 OR temp_0, temp_1, temp_0;
12646 ADDRESS pItem, _runFlag, temp_0;
12647 INDIRECT_F pItem, _runFlag, temp_1;
12648 BITOR temp_1, RUNFLAG_CHILDDRAWUPDATEONLY, temp_1;
12649 STOREP_F temp_1, temp_0;
12650 INDIRECT_F pParent, _runFlag, temp_0;
12651 BITAND temp_0, RUNFLAG_HIDDEN, temp_0;
12653 ADDRESS pItem, _runFlag, temp_0;
12654 INDIRECT_F pItem, _runFlag, temp_1;
12655 BITOR temp_1, RUNFLAG_HIDDEN, temp_1;
12656 STOREP_F temp_1, temp_0;
12660 void() Menu_UpdateRunFlags = asm
12663 local vector lSize;
12665 local float temp_0;
12666 local float temp_1;
12667 local vector temp_2;
12668 STORE_V Menu_Clip_Position, lPos;
12669 STORE_V Menu_Clip_Size, lSize;
12670 STORE_V Menu_Origin, lOrg;
12671 CALL0 Menu_Process_Setup;
12672 ADDRESS Menu_ActiveWindow, _runFlag, temp_0;
12673 INDIRECT_F Menu_ActiveWindow, _runFlag, temp_1;
12674 BITAND temp_1, RUNFLAG_MOUSEINAREA, temp_1;
12675 STOREP_F temp_1, temp_0;
12676 STORE_F Menu_ActiveWindow, parm0_x;
12677 STORE_F MENU_PROCESS_RUNFLAG, parm1_x;
12678 STORE_F KEY_GAME, parm2_x;
12679 STORE_F KEY_GAME, parm3_x;
12680 STORE_F KEY_GAME, parm4_x;
12681 CALL5 Menu_Process;
12682 STORE_V lSize, Menu_Clip_Size;
12683 STORE_V lPos, Menu_Clip_Position;
12684 STORE_V lOrg, Menu_Origin;
12685 SUB_V Cursor_Position, Menu_Origin, Menu_Cursor_Position;
12689 float(entity pEntity) Menu_HasEvents = asm
12691 local float temp_0;
12692 INDIRECT_F pEntity, _runFlag, temp_0;
12693 BITAND temp_0, RUNFLAG_CHILDDRAWONLY, temp_0;
12696 INDIRECT_F pEntity, _runFlag, temp_0;
12697 BITAND temp_0, RUNFLAG_CHILDDRAWUPDATEONLY, temp_0;
12700 INDIRECT_F pEntity, flag, temp_0;
12701 BITAND temp_0, FLAG_DRAWONLY, temp_0;
12704 INDIRECT_F pEntity, flag, temp_0;
12705 BITAND temp_0, FLAG_DRAWUPDATEONLY, temp_0;
12708 RETURN FILE_APPEND;
12712 void (vector, vector, vector, float, float, string) _Mgfx_Debug_Info;
12713 void(vector pPos, vector pSize, vector pColor, float pAlpha, float pDrawFlag, string pText) _Mgfx_Debug_Info = asm
12715 local float locked_1585;
12716 local float temp_0;
12717 local float temp_5;
12718 IF sys_debug_mgfx, 2;
12720 STORE_F pText, parm0_x;
12722 STORE_S return_x, pText;
12723 STORE_V pPos, parm0;
12725 STORE_V pSize, parm0;
12726 STORE_F return_x, temp_0;
12728 STORE_F return_x, locked_1585;
12729 STORE_F temp_0, return_x;
12730 STORE_V pColor, parm0;
12731 STORE_F return_x, temp_0;
12733 STORE_F return_x, temp_5;
12734 STORE_F temp_0, return_x;
12735 STORE_F "MGFX output: ", parm0_x;
12736 STORE_F return_x, parm1_x;
12737 STORE_F " - ", parm2_x;
12738 STORE_F locked_1585, parm3_x;
12739 STORE_F " C", parm4_x;
12740 STORE_F temp_5, parm5_x;
12742 STORE_F pAlpha, parm0_x;
12744 STORE_F pDrawFlag, parm0_x;
12745 STORE_F return_x, temp_0;
12747 STORE_F return_x, locked_1585;
12748 STORE_F temp_0, return_x;
12749 STORE_F " A", parm0_x;
12750 STORE_F return_x, parm1_x;
12751 STORE_F " X", parm2_x;
12752 STORE_F locked_1585, parm3_x;
12753 STORE_F " ", parm4_x;
12754 STORE_F pText, parm5_x;
12758 STORE_F pText, parm0_x;
12763 vector(vector pPos) Menu_MenToOrg = asm
12765 local vector temp_2;
12766 SUB_V pPos, Menu_Origin, temp_2;
12771 vector(vector pPos) Menu_OrgToMen = asm
12773 local vector temp_2;
12774 ADD_V pPos, Menu_Origin, temp_2;
12779 vector(vector pPos) Menu_ConToOrg = asm
12781 STORE_V pPos, parm0;
12782 CALL1 Gfx_ConToMen;
12783 STORE_V return, pPos;
12784 STORE_V pPos, parm0;
12785 CALL1 Menu_MenToOrg;
12790 vector(vector pPos) Menu_OrgToCon = asm
12792 STORE_V pPos, parm0;
12793 CALL1 Menu_OrgToMen;
12794 STORE_V return, pPos;
12795 STORE_V pPos, parm0;
12796 CALL1 Gfx_MenToCon;
12801 float(vector pPosition, float pCharacter, vector pScale, vector pRGB, float pAlpha, float pFlag) Menu_DrawCharacter = asm
12803 STORE_F pCharacter, parm0_x;
12805 STORE_F "DrawChar: ", parm0_x;
12806 STORE_F return_x, parm1_x;
12808 STORE_V pPosition, parm0;
12809 STORE_V pScale, parm1;
12810 STORE_V pRGB, parm2;
12811 STORE_F pAlpha, parm3_x;
12812 STORE_F pFlag, parm4_x;
12813 STORE_F return_x, parm5_x;
12814 CALL6 _Mgfx_Debug_Info;
12815 STORE_V pPosition, parm0;
12816 CALL1 Menu_OrgToMen;
12817 STORE_V return, pPosition;
12818 STORE_V pPosition, parm0;
12819 STORE_F pCharacter, parm1_x;
12820 STORE_V pScale, parm2;
12821 STORE_V pRGB, parm3;
12822 STORE_F pAlpha, parm4_x;
12823 STORE_F pFlag, parm5_x;
12824 CALL6 Gfx_DrawCharacter;
12829 float(vector pPosition, string pText, vector pScale, vector pRGB, float pAlpha, float pFlag) Menu_DrawString = asm
12831 local float temp_0;
12832 NOT_S pText, temp_0;
12834 RETURN FILE_APPEND;
12835 STORE_F "DrawString: ", parm0_x;
12836 STORE_F pText, parm1_x;
12838 STORE_V pPosition, parm0;
12839 STORE_V pScale, parm1;
12840 STORE_V pRGB, parm2;
12841 STORE_F pAlpha, parm3_x;
12842 STORE_F pFlag, parm4_x;
12843 STORE_F return_x, parm5_x;
12844 CALL6 _Mgfx_Debug_Info;
12845 STORE_V pPosition, parm0;
12846 CALL1 Menu_OrgToMen;
12847 STORE_V return, pPosition;
12848 STORE_V pPosition, parm0;
12849 STORE_F pText, parm1_x;
12850 STORE_V pScale, parm2;
12851 STORE_V pRGB, parm3;
12852 STORE_F pAlpha, parm4_x;
12853 STORE_F pFlag, parm5_x;
12854 CALL6 Gfx_DrawString;
12859 float(vector pPosition, string pPicture, vector pSize, vector pRGB, float pAlpha, float pFlag) Menu_DrawPicture = asm
12861 STORE_F "DrawPicture: ", parm0_x;
12862 STORE_F pPicture, parm1_x;
12864 STORE_V pPosition, parm0;
12865 STORE_V pSize, parm1;
12866 STORE_V pRGB, parm2;
12867 STORE_F pAlpha, parm3_x;
12868 STORE_F pFlag, parm4_x;
12869 STORE_F return_x, parm5_x;
12870 CALL6 _Mgfx_Debug_Info;
12871 STORE_V pPosition, parm0;
12872 CALL1 Menu_OrgToMen;
12873 STORE_V return, pPosition;
12874 STORE_V pPosition, parm0;
12875 STORE_F pPicture, parm1_x;
12876 STORE_V pSize, parm2;
12877 STORE_V pRGB, parm3;
12878 STORE_F pAlpha, parm4_x;
12879 STORE_F pFlag, parm5_x;
12885 float(vector pPosition, vector pSize, vector pRGB, float pAlpha, float pFlag) Menu_Fill = asm
12887 STORE_V pPosition, parm0;
12888 STORE_V pSize, parm1;
12889 STORE_V pRGB, parm2;
12890 STORE_F pAlpha, parm3_x;
12891 STORE_F pFlag, parm4_x;
12892 STORE_F "Fill", parm5_x;
12893 CALL6 _Mgfx_Debug_Info;
12894 STORE_V pPosition, parm0;
12895 CALL1 Menu_OrgToMen;
12896 STORE_V return, pPosition;
12897 STORE_V pPosition, parm0;
12898 STORE_V pSize, parm1;
12899 STORE_V pRGB, parm2;
12900 STORE_F pAlpha, parm3_x;
12901 STORE_F pFlag, parm4_x;
12907 void(float pX, float pY, float pWidth, float pHeight) Menu_SetClipArea = asm
12909 local vector lSize;
12910 local vector lDelta;
12911 local vector lPosition;
12912 local vector temp_2;
12913 STORE_F pX, lPosition_x;
12914 STORE_F pY, lPosition_y;
12915 STORE_V lPosition, parm0;
12916 CALL1 Menu_OrgToMen;
12917 STORE_V return, lPosition;
12918 STORE_F pWidth, lSize_x;
12919 STORE_F pHeight, lSize_y;
12920 STORE_V lPosition, parm0;
12921 STORE_V Menu_Clip_Position, parm1;
12922 STORE_V Menu_Clip_Size, parm2;
12923 CALL3 Util_GetClipDelta;
12924 STORE_V return, lDelta;
12925 ADD_V lPosition, lDelta, lPosition;
12926 SUB_V lSize, lDelta, temp_2;
12927 STORE_V lPosition, parm0;
12928 STORE_V temp_2, parm1;
12929 STORE_V Menu_Clip_Position, parm2;
12930 STORE_V Menu_Clip_Size, parm3;
12931 CALL4 Util_ClipRect;
12932 STORE_V return, lSize;
12933 STORE_F lPosition_x, parm0_x;
12934 STORE_F lPosition_y, parm1_x;
12935 STORE_F pWidth, parm2_x;
12936 STORE_F pHeight, parm3_x;
12937 CALL4 Gfx_SetClipArea;
12941 void() Menu_ResetClipArea = asm
12943 local float temp_0;
12944 local float temp_1;
12945 EQ_V Menu_Clip_Position, '0.000000 0.000000 0.000000', temp_0;
12947 EQ_V Menu_Clip_Size, '0.000000 0.000000 0.000000', temp_1;
12948 AND temp_0, temp_1, temp_0;
12950 CALL0 Gfx_ResetClipArea;
12952 STORE_F Menu_Clip_Position_x, parm0_x;
12953 STORE_F Menu_Clip_Position_y, parm1_x;
12954 STORE_F Menu_Clip_Size_x, parm2_x;
12955 STORE_F Menu_Clip_Size_y, parm3_x;
12956 CALL4 Gfx_SetClipArea;
12960 void() Menu_Init = asm
12962 CALL0 Sys_Debug_Init;
12963 CALL0 Sys_Debug_Frame;
12964 CALL0 Menu_InitGarbageStats;
12969 void() Menu_Load = asm
12971 STORE_F MENU_MAINFILE, parm0_x;
12972 CALL1 Parser_ParseMenu;
12973 CALL0 Menu_LinkWindows;
12977 entity (entity, FIELD TYPE, string, FIELD TYPE, float) finddef;
12978 entity(entity pStart, .string pFind1, string pMatch, .float pFind2, float pMatch2) finddef = asm
12980 local float temp_0;
12981 STORE_F pStart, parm0_x;
12982 STORE_F pFind1, parm1_x;
12983 STORE_F pMatch, parm2_x;
12985 STORE_ENT return_x, pStart;
12986 EQ_E pStart, null_entity, temp_0;
12989 INDIRECT_F pStart, pFind2, temp_0;
12990 EQ_F temp_0, pMatch2, temp_0;
12998 void(entity pParent) Menu_LinkChildren = asm
13000 local entity lOPrevious;
13001 local entity lOverwrite;
13002 local entity lNext;
13003 local entity lPrevious;
13004 local float lOrder;
13005 local entity lChild;
13006 local float temp_0;
13007 local float temp_1;
13008 INDIRECT_S pParent, name, temp_0;
13009 STORE_F parent, parm0_x;
13010 STORE_F temp_0, parm1_x;
13011 CALL2 findchainstring;
13012 STORE_ENT return_x, lChild;
13013 EQ_E lChild, null_entity, temp_0;
13016 STORE_ENT null_entity, lPrevious;
13018 INDIRECT_E lChild, chain, lNext;
13019 ADDRESS lChild, chain, temp_0;
13020 STOREP_ENT lPrevious, temp_0;
13021 STORE_ENT lChild, lPrevious;
13022 STORE_ENT lNext, lChild;
13024 STORE_ENT lPrevious, lChild;
13025 STORE_F FILE_APPEND, lOrder;
13026 STORE_ENT null_entity, lPrevious;
13028 INDIRECT_S pParent, name, temp_0;
13029 STORE_F null_entity, parm0_x;
13030 STORE_F parent, parm1_x;
13031 STORE_F temp_0, parm2_x;
13032 STORE_F orderPos, parm3_x;
13033 STORE_F lOrder, parm4_x;
13035 STORE_ENT return_x, lOverwrite;
13036 EQ_E lOverwrite, lChild, temp_0;
13038 ADDRESS lChild, orderPos, temp_0;
13039 STOREP_F lOrder, temp_0;
13041 IFNOT lOverwrite, 13;
13042 STORE_F null_entity, parm0_x;
13043 STORE_F chain, parm1_x;
13044 STORE_F lOverwrite, parm2_x;
13046 STORE_ENT return_x, lOPrevious;
13047 ADDRESS lOPrevious, chain, temp_0;
13048 INDIRECT_E lOverwrite, chain, temp_1;
13049 STOREP_ENT temp_1, temp_0;
13050 ADDRESS lOverwrite, chain, temp_0;
13051 STOREP_ENT lChild, temp_0;
13052 STORE_ENT lOverwrite, lChild;
13054 ADDRESS lChild, orderPos, temp_0;
13055 SUB_F KEY_GAME, lOrder, temp_1;
13056 STOREP_F temp_1, temp_0;
13057 IFNOT lPrevious, 4;
13058 ADDRESS lPrevious, _next, temp_0;
13059 STOREP_ENT lChild, temp_0;
13061 ADDRESS pParent, _child, temp_0;
13062 STOREP_ENT lChild, temp_0;
13063 ADDRESS lChild, _prev, temp_0;
13064 STOREP_ENT lPrevious, temp_0;
13065 ADDRESS lChild, _parent, temp_0;
13066 STOREP_ENT pParent, temp_0;
13067 STORE_ENT lChild, lPrevious;
13068 INDIRECT_E lChild, chain, lChild;
13069 STORE_F lOrder, temp_0;
13070 ADD_F lOrder, FILE_APPEND, lOrder;
13072 ADDRESS lPrevious, _next, temp_0;
13073 STOREP_ENT null_entity, temp_0;
13077 void() Menu_LinkWindows = asm
13079 local entity lEntity;
13080 local float temp_0;
13081 local float temp_1;
13082 STORE_F "Loading defaults if necessary
13085 STORE_F null_entity, parm0_x;
13086 STORE_F name, parm1_x;
13087 STORE_F MENU_NORMAL_NAME, parm2_x;
13089 STORE_ENT return_x, lEntity;
13090 EQ_E lEntity, null_entity, temp_0;
13092 STORE_F MENU_NORMAL_DEFAULT, parm0_x;
13093 CALL1 loadfromdata;
13094 STORE_F null_entity, parm0_x;
13095 STORE_F name, parm1_x;
13096 STORE_F MENU_NORMAL_NAME, parm2_x;
13098 STORE_ENT return_x, lEntity;
13099 EQ_E lEntity, null_entity, temp_0;
13101 STORE_F "Bad MENU_NORMAL_DEFAULT!
13104 STORE_F null_entity, parm0_x;
13105 STORE_F name, parm1_x;
13106 STORE_F MENU_INGAME_NAME, parm2_x;
13108 STORE_ENT return_x, lEntity;
13109 EQ_E lEntity, null_entity, temp_0;
13111 STORE_F MENU_INGAME_DEFAULT, parm0_x;
13112 CALL1 loadfromdata;
13113 STORE_F null_entity, parm0_x;
13114 STORE_F name, parm1_x;
13115 STORE_F MENU_INGAME_NAME, parm2_x;
13117 STORE_ENT return_x, lEntity;
13118 EQ_E lEntity, null_entity, temp_0;
13120 STORE_F "Bad MENU_INGAME_DEFAULT!
13123 STORE_F "Verifying that every name is used only once
13126 STORE_ENT null_entity, lEntity;
13127 STORE_F lEntity, parm0_x;
13129 STORE_ENT return_x, lEntity;
13130 NE_E return_x, null_entity, temp_0;
13132 STORE_ENT lEntity, self;
13133 INDIRECT_S lEntity, name, temp_0;
13134 STORE_F self, parm0_x;
13135 STORE_F name, parm1_x;
13136 STORE_F temp_0, parm2_x;
13138 STORE_ENT return_x, self;
13139 NE_E return_x, null_entity, temp_0;
13141 NE_E self, null_entity, temp_0;
13143 INDIRECT_S lEntity, name, temp_0;
13144 STORE_F "Name ", parm0_x;
13145 STORE_F temp_0, parm1_x;
13146 STORE_F " already used!
13151 STORE_F "Verification of: name, type and parent fields
13154 STORE_ENT null_entity, self;
13155 STORE_F self, parm0_x;
13157 STORE_ENT return_x, self;
13158 NE_E return_x, null_entity, temp_0;
13160 INDIRECT_S self, name, temp_0;
13161 EQ_S temp_0, "", temp_0;
13163 STORE_F "Name is missing!
13167 INDIRECT_S self, type, temp_0;
13168 EQ_S temp_0, "", temp_0;
13170 STORE_F "Type is missing!
13174 INDIRECT_S self, type, parm0_x;
13175 STORE_F "_Spawn", parm1_x;
13177 STORE_F return_x, parm0_x;
13180 INDIRECT_S self, type, temp_0;
13181 STORE_F "Control ", parm0_x;
13182 STORE_F temp_0, parm1_x;
13183 STORE_F " not found!
13187 INDIRECT_S self, parent, temp_0;
13188 NE_S temp_0, "", temp_0;
13190 INDIRECT_S self, parent, temp_0;
13191 STORE_F null_entity, parm0_x;
13192 STORE_F name, parm1_x;
13193 STORE_F temp_0, parm2_x;
13195 STORE_ENT return_x, lEntity;
13196 EQ_E lEntity, null_entity, temp_0;
13198 INDIRECT_S self, parent, temp_0;
13199 STORE_F "Item ", parm0_x;
13200 STORE_F temp_0, parm1_x;
13201 STORE_F " not found!
13206 ADDRESS self, _parent, temp_0;
13207 STOREP_ENT null_entity, temp_0;
13209 STORE_F "Building the child lists
13212 STORE_ENT null_entity, lEntity;
13213 STORE_F lEntity, parm0_x;
13215 STORE_ENT return_x, lEntity;
13216 NE_E return_x, null_entity, temp_0;
13218 STORE_F lEntity, parm0_x;
13219 CALL1 Menu_LinkChildren;
13221 STORE_F "Calling the type functions
13224 STORE_ENT null_entity, lEntity;
13225 STORE_F lEntity, parm0_x;
13227 STORE_ENT return_x, lEntity;
13228 NE_E return_x, null_entity, temp_0;
13230 STORE_ENT lEntity, self;
13231 INDIRECT_F self, flag, temp_0;
13232 BITAND temp_0, FLAG_TEMPLATE, temp_0;
13233 NOT_F temp_0, temp_0;
13235 INDIRECT_F self, _runFlag, temp_1;
13236 BITAND temp_1, RUNFLAG_SPAWNED, temp_1;
13237 NOT_F temp_1, temp_1;
13238 AND temp_0, temp_1, temp_0;
13240 INDIRECT_S self, type, parm0_x;
13241 STORE_F "_Spawn", parm1_x;
13243 STORE_F return_x, parm0_x;
13244 CALL1 callfunction;
13245 ADDRESS self, _runFlag, temp_0;
13246 INDIRECT_F self, _runFlag, temp_1;
13247 BITOR temp_1, RUNFLAG_SPAWNED, temp_1;
13248 STOREP_F temp_1, temp_0;
13250 STORE_F "Linking windows finished.
13256 void(entity pItem) Menu_LinkItem = asm
13258 local float locked_1586;
13259 local entity lOldSelf;
13260 local entity lEntity;
13261 local float temp_1;
13262 local float temp_5;
13263 INDIRECT_F pItem, _runFlag, locked_1586;
13264 BITAND locked_1586, RUNFLAG_SPAWNED, locked_1586;
13265 IFNOT locked_1586, 2;
13267 INDIRECT_S pItem, type, locked_1586;
13268 EQ_S locked_1586, "", locked_1586;
13269 IFNOT locked_1586, 7;
13270 STORE_F pItem, parm0_x;
13272 STORE_F "LinkItem: Type is missing (", parm0_x;
13273 STORE_F return_x, parm1_x;
13277 INDIRECT_S pItem, type, parm0_x;
13278 STORE_F "_Spawn", parm1_x;
13280 STORE_F return_x, parm0_x;
13283 INDIRECT_S pItem, type, locked_1586;
13284 STORE_F pItem, parm0_x;
13286 STORE_F "LinkItem: Control ", parm0_x;
13287 STORE_F locked_1586, parm1_x;
13288 STORE_F " not found (", parm2_x;
13289 STORE_F return_x, parm3_x;
13293 STORE_ENT null_entity, lEntity;
13294 INDIRECT_S pItem, name, locked_1586;
13295 STORE_F lEntity, parm0_x;
13296 STORE_F name, parm1_x;
13297 STORE_F locked_1586, parm2_x;
13299 STORE_ENT return_x, lEntity;
13300 NE_E return_x, null_entity, locked_1586;
13301 IFNOT locked_1586, 20;
13302 NE_E lEntity, pItem, locked_1586;
13303 IFNOT locked_1586, 17;
13304 INDIRECT_S pItem, name, locked_1586;
13305 STORE_F pItem, parm0_x;
13307 STORE_F lEntity, parm0_x;
13308 STORE_F return_x, temp_1;
13310 STORE_F return_x, temp_5;
13311 STORE_F temp_1, return_x;
13312 STORE_F "LinkItem: Name '", parm0_x;
13313 STORE_F locked_1586, parm1_x;
13314 STORE_F "' already in use (", parm2_x;
13315 STORE_F return_x, parm3_x;
13316 STORE_F ", ", parm4_x;
13317 STORE_F temp_5, parm5_x;
13318 STORE_F ")!", parm6_x;
13321 INDIRECT_S pItem, parent, locked_1586;
13322 NE_S locked_1586, "", locked_1586;
13323 IFNOT locked_1586, 20;
13324 ADDRESS pItem, _parent, locked_1586;
13325 INDIRECT_S pItem, parent, temp_1;
13326 STORE_F null_entity, parm0_x;
13327 STORE_F name, parm1_x;
13328 STORE_F temp_1, parm2_x;
13330 STOREP_ENT return_x, locked_1586;
13331 INDIRECT_E pItem, _parent, locked_1586;
13332 IF locked_1586, 10;
13333 INDIRECT_S pItem, parent, locked_1586;
13334 STORE_F pItem, parm0_x;
13336 STORE_F "LinkItem: Couldnt find parent '", parm0_x;
13337 STORE_F locked_1586, parm1_x;
13338 STORE_F "' (", parm2_x;
13339 STORE_F return_x, parm3_x;
13340 STORE_F ")!", parm4_x;
13343 ADDRESS pItem, _parent, locked_1586;
13344 STOREP_ENT null_entity, locked_1586;
13345 STORE_F pItem, parm0_x;
13346 CALL1 Menu_LinkChildren;
13347 INDIRECT_E pItem, _child, lEntity;
13349 STORE_F lEntity, parm0_x;
13350 CALL1 Menu_LinkItem;
13351 INDIRECT_E lEntity, _next, lEntity;
13353 STORE_ENT self, lOldSelf;
13354 STORE_ENT pItem, self;
13355 INDIRECT_F self, flag, locked_1586;
13356 BITAND locked_1586, FLAG_TEMPLATE, locked_1586;
13357 IF locked_1586, 10;
13358 INDIRECT_S self, type, parm0_x;
13359 STORE_F "_Spawn", parm1_x;
13361 STORE_F return_x, parm0_x;
13362 CALL1 callfunction;
13363 ADDRESS self, _runFlag, locked_1586;
13364 INDIRECT_F self, _runFlag, temp_1;
13365 BITOR temp_1, RUNFLAG_SPAWNED, temp_1;
13366 STOREP_F temp_1, locked_1586;
13367 STORE_ENT lOldSelf, self;
13371 void() Menu_Hide = asm
13373 STORE_F Menu_ActiveItem, parm0_x;
13374 STORE_F KEY_GAME, parm1_x;
13375 STORE_F KEY_GAME, parm2_x;
13376 CALL3 Raise_Select;
13377 STORE_F FILE_APPEND, parm0_x;
13378 CALL1 Menu_CollectGarbage;
13379 CALL0 Menu_ResetGarbageStats;
13383 void() Menu_PerformReinit = asm
13385 local float temp_0;
13386 local float temp_1;
13387 local float temp_5;
13388 CALL0 Menu_History_Clear;
13389 STORE_FNC Util_NullFunction, Menu_KeyHook;
13390 STORE_ENT null_entity, self;
13391 STORE_F self, parm0_x;
13393 STORE_ENT return_x, self;
13394 NE_E return_x, null_entity, temp_0;
13396 INDIRECT_S self, parent, temp_0;
13397 EQ_S temp_0, "", temp_0;
13399 ADDRESS self, _parent, temp_0;
13400 STOREP_ENT null_entity, temp_0;
13402 INDIRECT_E self, _parent, temp_0;
13403 INDIRECT_S temp_0, name, temp_0;
13404 INDIRECT_S self, parent, temp_1;
13405 NE_S temp_0, temp_1, temp_0;
13407 INDIRECT_S self, parent, temp_0;
13408 INDIRECT_S self, name, temp_1;
13409 INDIRECT_E self, _parent, temp_5;
13410 INDIRECT_S temp_5, name, temp_5;
13411 STORE_F "Parent (should be ", parm0_x;
13412 STORE_F temp_0, parm1_x;
13413 STORE_F ") of menu item ", parm2_x;
13414 STORE_F temp_1, parm3_x;
13415 STORE_F " changed to ", parm4_x;
13416 STORE_F temp_5, parm5_x;
13420 STORE_F self, parm0_x;
13421 CALL1 Raise_Reinit;
13423 IFNOT MENU_ALLOWINGAME, 2;
13424 BITAND gamestatus, KEY_MENU, temp_0;
13425 AND MENU_ALLOWINGAME, temp_0, temp_0;
13427 STORE_F null_entity, parm0_x;
13428 STORE_F name, parm1_x;
13429 STORE_F MENU_INGAME_NAME, parm2_x;
13431 STORE_ENT return_x, Menu_ActiveWindow;
13433 STORE_F null_entity, parm0_x;
13434 STORE_F name, parm1_x;
13435 STORE_F MENU_NORMAL_NAME, parm2_x;
13437 STORE_ENT return_x, Menu_ActiveWindow;
13438 CALL0 Menu_UpdateRunFlags;
13439 STORE_F KEY_GAME, parm0_x;
13440 CALL1 Menu_Reselect;
13444 void() Menu_Shutdown = asm
13446 local float temp_0;
13447 STORE_ENT null_entity, self;
13448 STORE_F self, parm0_x;
13450 STORE_ENT return_x, self;
13451 NE_E return_x, null_entity, temp_0;
13453 STORE_F self, parm0_x;
13454 CALL1 Raise_Destroy;
13459 entity(string pType, string pName, string pParent) Menu_CreateItem = asm
13461 local entity lItem;
13462 local float temp_0;
13463 NOT_S pType, temp_0;
13465 STORE_F "Bad pType '", parm0_x;
13466 STORE_F pType, parm1_x;
13467 STORE_F "'!", parm2_x;
13469 NOT_S pName, temp_0;
13471 STORE_F "Bad pName '", parm0_x;
13472 STORE_F pName, parm1_x;
13473 STORE_F "'!", parm2_x;
13476 STORE_ENT return_x, lItem;
13477 STORE_F pParent, parm0_x;
13478 STORE_F "::", parm1_x;
13479 STORE_F pName, parm2_x;
13481 STORE_F "{ type "", parm0_x;
13482 STORE_F pType, parm1_x;
13483 STORE_F "" name "", parm2_x;
13484 STORE_F return_x, parm3_x;
13485 STORE_F "" parent "", parm4_x;
13486 STORE_F pParent, parm5_x;
13487 STORE_F "" }", parm6_x;
13489 STORE_F lItem, parm0_x;
13490 STORE_F return_x, parm1_x;
13491 CALL2 parseentitydata;
13496 entity(entity pTemplate, string pName, string pParent, bool pTree) Menu_DeriveItem = asm
13498 local float locked_1586;
13499 local string lName;
13500 local entity lChild;
13501 local entity lItem;
13502 local float temp_1;
13504 STORE_F "Null pTemplate!", parm0_x;
13506 NOT_S pName, locked_1586;
13507 IFNOT locked_1586, 5;
13508 STORE_F "Bad pName '", parm0_x;
13509 STORE_F pName, parm1_x;
13510 STORE_F "'!", parm2_x;
13513 STORE_ENT return_x, lItem;
13514 STORE_F pTemplate, parm0_x;
13515 STORE_F lItem, parm1_x;
13517 INDIRECT_F lItem, flag, locked_1586;
13518 BITAND locked_1586, FLAG_TEMPLATE, locked_1586;
13519 IFNOT locked_1586, 5;
13520 ADDRESS lItem, flag, locked_1586;
13521 INDIRECT_F lItem, flag, temp_1;
13522 SUB_F temp_1, FLAG_TEMPLATE, temp_1;
13523 STOREP_F temp_1, locked_1586;
13524 INDIRECT_F lItem, _runFlag, locked_1586;
13525 BITAND locked_1586, RUNFLAG_SPAWNED, locked_1586;
13526 IFNOT locked_1586, 5;
13527 ADDRESS lItem, _runFlag, locked_1586;
13528 INDIRECT_F lItem, _runFlag, temp_1;
13529 SUB_F temp_1, RUNFLAG_SPAWNED, temp_1;
13530 STOREP_F temp_1, locked_1586;
13531 STORE_F pParent, parm0_x;
13532 STORE_F "::", parm1_x;
13533 STORE_F pName, parm2_x;
13535 STORE_F "{ name "", parm0_x;
13536 STORE_F return_x, parm1_x;
13537 STORE_F "" parent "", parm2_x;
13538 STORE_F pParent, parm3_x;
13539 STORE_F "" }", parm4_x;
13541 STORE_F lItem, parm0_x;
13542 STORE_F return_x, parm1_x;
13543 CALL2 parseentitydata;
13545 INDIRECT_E pTemplate, _child, lChild;
13547 INDIRECT_S lChild, name, locked_1586;
13548 INDIRECT_S lChild, parent, parm0_x;
13550 ADD_F return_x, KEY_MENU, temp_1;
13551 STORE_F locked_1586, parm0_x;
13552 STORE_F temp_1, parm1_x;
13553 STORE_F 100000.000000, parm2_x;
13555 STORE_F return_x, parm0_x;
13557 STORE_S return_x, lName;
13558 INDIRECT_S lItem, name, locked_1586;
13559 STORE_F lChild, parm0_x;
13560 STORE_F lName, parm1_x;
13561 STORE_F locked_1586, parm2_x;
13562 STORE_F FILE_APPEND, parm3_x;
13563 CALL4 Menu_DeriveItem;
13564 STORE_F lName, parm0_x;
13566 INDIRECT_E lChild, _next, lChild;
13572 void(entity pItem, string pData) Menu_AddEntityData = asm
13574 STORE_F pItem, parm0_x;
13575 STORE_F pData, parm1_x;
13576 CALL2 parseentitydata;
13580 void(entity pWindow) Menu_LinkWindow = asm
13582 STORE_F pWindow, parm0_x;
13583 CALL1 Menu_LinkItem;
13587 void() Sys_Debug_Init = asm
13589 STORE_F SYSTEM_CVAR_VERSION_BUILDDATE, parm0_x;
13590 STORE_F "", parm1_x;
13591 STORE_F CVAR_READONLY, parm2_x;
13592 CALL3 registercvar;
13593 STORE_F SYSTEM_CVAR_VERSION_BUILDDATE, parm0_x;
13594 STORE_F SYSTEM_CVAR_VERSION_BUILDDATE_VALUE, parm1_x;
13596 STORE_F SYSTEM_CVAR_VERSION_BUILDTIME, parm0_x;
13597 STORE_F "", parm1_x;
13598 STORE_F CVAR_READONLY, parm2_x;
13599 CALL3 registercvar;
13600 STORE_F SYSTEM_CVAR_VERSION_BUILDTIME, parm0_x;
13601 STORE_F SYSTEM_CVAR_VERSION_BUILDTIME_VALUE, parm1_x;
13603 STORE_F SYSTEM_CVAR_VERSION, parm0_x;
13604 STORE_F "", parm1_x;
13605 STORE_F CVAR_READONLY, parm2_x;
13606 CALL3 registercvar;
13607 STORE_F SYSTEM_CVAR_VERSION, parm0_x;
13608 STORE_F SYSTEM_CVAR_VERSION_VALUE, parm1_x;
13610 STORE_F KEY_GAME, parm0_x;
13612 STORE_F SYSTEM_CVAR_DEBUG, parm0_x;
13613 STORE_F return_x, parm1_x;
13614 STORE_F KEY_GAME, parm2_x;
13615 CALL3 registercvar;
13616 STORE_F KEY_GAME, parm0_x;
13618 STORE_F SYSTEM_CVAR_DEBUG_REF, parm0_x;
13619 STORE_F return_x, parm1_x;
13620 STORE_F KEY_GAME, parm2_x;
13621 CALL3 registercvar;
13622 STORE_F KEY_GAME, parm0_x;
13624 STORE_F SYSTEM_CVAR_DEBUG_RUNFLAG, parm0_x;
13625 STORE_F return_x, parm1_x;
13626 STORE_F KEY_GAME, parm2_x;
13627 CALL3 registercvar;
13628 STORE_F KEY_GAME, parm0_x;
13630 STORE_F SYSTEM_CVAR_DEBUG_PROCESS, parm0_x;
13631 STORE_F return_x, parm1_x;
13632 STORE_F KEY_GAME, parm2_x;
13633 CALL3 registercvar;
13634 STORE_F KEY_GAME, parm0_x;
13636 STORE_F SYSTEM_CVAR_DEBUG_MGFX, parm0_x;
13637 STORE_F return_x, parm1_x;
13638 STORE_F KEY_GAME, parm2_x;
13639 CALL3 registercvar;
13640 STORE_F KEY_GAME, parm0_x;
13642 STORE_F SYSTEM_CVAR_DEBUG_STRUCTURE, parm0_x;
13643 STORE_F return_x, parm1_x;
13644 STORE_F KEY_GAME, parm2_x;
13645 CALL3 registercvar;
13646 STORE_F SYSTEM_CVAR_DEBUG_PARSER, parm0_x;
13647 STORE_F SYSTEM_CVAR_DEBUG_PARSER_DEFAULT, parm1_x;
13648 STORE_F KEY_GAME, parm2_x;
13649 CALL3 registercvar;
13650 STORE_F SYSTEM_CVAR_DEBUG_PROCESS_FILTER, parm0_x;
13651 STORE_F SYSTEM_CVAR_DEBUG_PROCESS_FILTER_DEFAULT, parm1_x;
13652 STORE_F KEY_GAME, parm2_x;
13653 CALL3 registercvar;
13654 STORE_F KEY_GAME, parm0_x;
13656 STORE_F SYSTEM_CVAR_DEBUG_SOUND, parm0_x;
13657 STORE_F return_x, parm1_x;
13658 STORE_F KEY_GAME, parm2_x;
13659 CALL3 registercvar;
13660 STORE_F SYSTEM_CVAR_DEBUG_DUMP_NAMES, parm0_x;
13661 STORE_F "0", parm1_x;
13662 STORE_F KEY_GAME, parm2_x;
13663 CALL3 registercvar;
13664 STORE_F KEY_GAME, parm0_x;
13666 STORE_F SYSTEM_CVAR_DEBUG_AREA, parm0_x;
13667 STORE_F return_x, parm1_x;
13668 STORE_F KEY_GAME, parm2_x;
13669 CALL3 registercvar;
13670 STORE_F KEY_GAME, parm0_x;
13672 STORE_F SYSTEM_CVAR_DEBUG_STEP, parm0_x;
13673 STORE_F return_x, parm1_x;
13674 STORE_F KEY_GAME, parm2_x;
13675 CALL3 registercvar;
13676 STORE_F KEY_GAME, parm0_x;
13678 STORE_F SYSTEM_CVAR_DEBUG_MOUSE, parm0_x;
13679 STORE_F return_x, parm1_x;
13680 STORE_F KEY_GAME, parm2_x;
13681 CALL3 registercvar;
13685 void() Sys_Debug_Frame = asm
13688 local float lTemp2;
13689 local float lTemp1;
13690 local float temp_0;
13691 STORE_F SYSTEM_CVAR_DEBUG, parm0_x;
13693 STORE_F return_x, sys_debug;
13694 IFNOT sys_debug, 155;
13695 STORE_F SYSTEM_CVAR_DEBUG_REF, parm0_x;
13697 STORE_F return_x, sys_debug_ref;
13698 STORE_F SYSTEM_CVAR_DEBUG_AREA, parm0_x;
13700 STORE_F return_x, sys_debug_area;
13701 STORE_F SYSTEM_CVAR_DEBUG_SOUND, parm0_x;
13703 STORE_F return_x, sys_debug_sound;
13704 STORE_F SYSTEM_CVAR_DEBUG_STRUCTURE, parm0_x;
13706 STORE_F return_x, sys_debug_structure;
13707 STORE_F SYSTEM_CVAR_DEBUG_MOUSE, parm0_x;
13709 STORE_F return_x, sys_debug_mouse;
13710 STORE_F SYSTEM_CVAR_DEBUG_STEP, parm0_x;
13712 STORE_F return_x, lStep;
13713 EQ_F lStep, FILE_APPEND, temp_0;
13715 STORE_F FILE_APPEND, sys_debug_halt;
13717 EQ_F lStep, KEY_MENU, temp_0;
13719 STORE_F KEY_GAME, sys_debug_halt;
13720 STORE_F SYSTEM_CVAR_DEBUG_STEP, parm0_x;
13721 STORE_F "1", parm1_x;
13724 STORE_F return_x, parm0_x;
13726 STORE_F "Menu: -- Step: Time:", parm0_x;
13727 STORE_F return_x, parm1_x;
13732 STORE_F KEY_GAME, sys_debug_halt;
13733 STORE_F SYSTEM_CVAR_DEBUG_RUNFLAG, parm0_x;
13735 STORE_F return_x, sys_debug_runflag;
13737 STORE_F KEY_GAME, sys_debug_runflag;
13739 STORE_F SYSTEM_CVAR_DEBUG_RUNFLAG, parm0_x;
13740 STORE_F "0", parm1_x;
13742 STORE_F FILE_APPEND, sys_debug_runflag;
13744 IFNOT sys_debug_runflag, -7;
13745 EQ_F sys_debug_runflag, FILE_APPEND, temp_0;
13747 EQ_F sys_debug_runflag, KEY_MENU, temp_0;
13749 STORE_F SYSTEM_CVAR_DEBUG_PROCESS, parm0_x;
13751 STORE_F return_x, sys_debug_process;
13753 STORE_F KEY_GAME, sys_debug_process;
13755 STORE_F SYSTEM_CVAR_DEBUG_PROCESS, parm0_x;
13756 STORE_F "0", parm1_x;
13758 STORE_F FILE_APPEND, sys_debug_process;
13760 IFNOT sys_debug_process, -7;
13761 EQ_F sys_debug_process, FILE_APPEND, temp_0;
13763 EQ_F sys_debug_process, KEY_MENU, temp_0;
13765 STORE_F SYSTEM_CVAR_DEBUG_MGFX, parm0_x;
13767 STORE_F return_x, sys_debug_mgfx;
13769 STORE_F KEY_GAME, sys_debug_mgfx;
13771 STORE_F SYSTEM_CVAR_DEBUG_MGFX, parm0_x;
13772 STORE_F "0", parm1_x;
13774 STORE_F FILE_APPEND, sys_debug_mgfx;
13776 IFNOT sys_debug_mgfx, -7;
13777 EQ_F sys_debug_mgfx, FILE_APPEND, temp_0;
13779 EQ_F sys_debug_mgfx, KEY_MENU, temp_0;
13781 STORE_F SYSTEM_CVAR_DEBUG_PROCESS_FILTER, parm0_x;
13783 STORE_F return_x, parm0_x;
13785 STORE_F return_x, lTemp1;
13786 STORE_F KEY_GAME, sys_debug_process_filter;
13787 STORE_F KEY_GAME, lTemp2;
13788 LT lTemp2, lTemp1, temp_0;
13790 STORE_F lTemp2, parm0_x;
13792 EQ_S return_x, "runflag", temp_0;
13794 BITOR sys_debug_process_filter, MENU_PROCESS_RUNFLAG, sys_debug_process_filter;
13796 STORE_F lTemp2, parm0_x;
13798 EQ_S return_x, "draw", temp_0;
13800 BITOR sys_debug_process_filter, MENU_PROCESS_DRAW, sys_debug_process_filter;
13802 STORE_F lTemp2, parm0_x;
13804 EQ_S return_x, "update", temp_0;
13806 BITOR sys_debug_process_filter, MENU_PROCESS_UPDATE, sys_debug_process_filter;
13808 STORE_F lTemp2, parm0_x;
13810 EQ_S return_x, "mouse", temp_0;
13812 BITOR sys_debug_process_filter, MENU_PROCESS_MOUSE, sys_debug_process_filter;
13814 STORE_F lTemp2, parm0_x;
13816 EQ_S return_x, "key", temp_0;
13818 BITOR sys_debug_process_filter, MENU_PROCESS_KEY, sys_debug_process_filter;
13819 ADD_F lTemp2, FILE_APPEND, lTemp2;
13821 STORE_F SYSTEM_CVAR_DEBUG_PARSER, parm0_x;
13823 STORE_F return_x, parm0_x;
13825 STORE_F return_x, lTemp1;
13826 STORE_F KEY_GAME, sys_debug_parser;
13827 STORE_F KEY_GAME, lTemp2;
13828 LT lTemp2, lTemp1, temp_0;
13830 STORE_F lTemp2, parm0_x;
13832 EQ_S return_x, "info", temp_0;
13834 BITOR sys_debug_parser, PARSER_INFO, sys_debug_parser;
13836 STORE_F lTemp2, parm0_x;
13838 EQ_S return_x, "high", temp_0;
13840 BITOR sys_debug_parser, PARSER_HIGH, sys_debug_parser;
13842 STORE_F lTemp2, parm0_x;
13844 EQ_S return_x, "low", temp_0;
13846 BITOR sys_debug_parser, PARSER_LOW, sys_debug_parser;
13847 ADD_F lTemp2, FILE_APPEND, lTemp2;
13850 STORE_F KEY_GAME, sys_debug_halt;
13851 STORE_F KEY_GAME, sys_debug_ref;
13852 STORE_F KEY_GAME, sys_debug_area;
13853 STORE_F KEY_GAME, sys_debug_sound;
13854 STORE_F KEY_GAME, sys_debug_runflag;
13855 STORE_F KEY_GAME, sys_debug_process;
13856 STORE_F KEY_GAME, sys_debug_mgfx;
13857 STORE_F KEY_GAME, sys_debug_structure;
13858 STORE_F KEY_GAME, sys_debug_parser;
13859 STORE_F KEY_GAME, sys_debug_process_filter;
13860 STORE_F KEY_GAME, sys_debug_mouse;
13861 STORE_F SYSTEM_CVAR_DEBUG_DUMP_NAMES, parm0_x;
13864 CALL0 Sys_Debug_DumpNames;
13865 STORE_F SYSTEM_CVAR_DEBUG_DUMP_NAMES, parm0_x;
13866 STORE_F "0", parm1_x;
13868 STORE_V '-1.000000 -1.000000 -1.000000', sys_debug_cursor_localpos;
13872 void() Sys_Debug_Draw = asm
13874 local float temp_0;
13875 local float temp_1;
13876 EQ_F sys_debug_mouse, FILE_APPEND, temp_0;
13878 STORE_F sys_debug_cursor_localpos_x, parm0_x;
13880 STORE_F return_x, parm0_x;
13882 STORE_F sys_debug_cursor_localpos_y, parm0_x;
13883 STORE_F return_x, temp_0;
13885 STORE_F return_x, temp_1;
13886 STORE_F temp_0, return_x;
13887 STORE_F temp_1, parm0_x;
13888 STORE_F return_x, temp_0;
13890 STORE_F return_x, temp_1;
13891 STORE_F temp_0, return_x;
13892 STORE_F return_x, parm0_x;
13893 STORE_F " ", parm1_x;
13894 STORE_F temp_1, parm2_x;
13896 STORE_V '1.000000 0.000000 0.000000', parm0;
13897 STORE_F return_x, parm1_x;
13898 STORE_V '9.000000 9.000000 0.000000', parm2;
13899 STORE_V '0.800000 0.800000 0.800000', parm3;
13900 STORE_F FILE_APPEND, parm4_x;
13901 STORE_F FILE_APPEND, parm5_x;
13902 CALL6 Cursor_PrintInfo;
13904 EQ_F sys_debug_mouse, KEY_MENU, temp_0;
13906 STORE_F Cursor_Position_x, parm0_x;
13908 STORE_F return_x, parm0_x;
13910 STORE_F Cursor_Position_y, parm0_x;
13911 STORE_F return_x, temp_0;
13913 STORE_F return_x, temp_1;
13914 STORE_F temp_0, return_x;
13915 STORE_F temp_1, parm0_x;
13916 STORE_F return_x, temp_0;
13918 STORE_F return_x, temp_1;
13919 STORE_F temp_0, return_x;
13920 STORE_F return_x, parm0_x;
13921 STORE_F " ", parm1_x;
13922 STORE_F temp_1, parm2_x;
13924 STORE_V '1.000000 0.000000 0.000000', parm0;
13925 STORE_F return_x, parm1_x;
13926 STORE_V '9.000000 9.000000 0.000000', parm2;
13927 STORE_V '0.800000 0.800000 0.800000', parm3;
13928 STORE_F FILE_APPEND, parm4_x;
13929 STORE_F FILE_APPEND, parm5_x;
13930 CALL6 Cursor_PrintInfo;
13934 void() Sys_Debug_DumpNames = asm
13936 local entity lNode;
13937 local float temp_0;
13938 STORE_F "Menu: Dumping names..
13941 STORE_ENT null_entity, lNode;
13942 STORE_F lNode, parm0_x;
13944 STORE_ENT return_x, lNode;
13945 NE_E return_x, null_entity, temp_0;
13947 STORE_F lNode, parm0_x;
13949 INDIRECT_S lNode, name, temp_0;
13950 STORE_F "Menu: ", parm0_x;
13951 STORE_F return_x, parm1_x;
13952 STORE_F " <-> ", parm2_x;
13953 STORE_F temp_0, parm3_x;
13964 void () Parser_Define_Spawn;
13965 void() Parser_Define_Spawn = asm
13970 void () Parser_TokenizeLine;
13971 void() Parser_TokenizeLine = asm
13973 STORE_F Parser_Line, parm0_x;
13975 STORE_F return_x, Parser_NumTokens;
13976 STORE_F KEY_GAME, Parser_TokenNum;
13980 float() Parser_GetToken = asm
13982 local string lLine;
13983 local float temp_0;
13984 GE Parser_TokenNum, Parser_NumTokens, temp_0;
13986 STORE_F Parser_File, parm0_x;
13988 STORE_S return_x, lLine;
13989 ADD_F Parser_LineNumber, FILE_APPEND, Parser_LineNumber;
13990 NOT_S lLine, temp_0;
13992 STORE_F lLine, parm0_x;
13997 CALL0 Parser_GetToken;
13999 STORE_F Parser_Line, parm0_x;
14000 STORE_F lLine, parm1_x;
14002 STORE_S return_x, Parser_Line;
14003 CALL0 Parser_TokenizeLine;
14004 CALL0 Parser_GetToken;
14007 STORE_F Parser_TokenNum, parm0_x;
14009 STORE_F Parser_Token, parm0_x;
14010 STORE_F return_x, parm1_x;
14012 STORE_S return_x, Parser_Token;
14013 STORE_F Parser_TokenNum, temp_0;
14014 ADD_F Parser_TokenNum, FILE_APPEND, Parser_TokenNum;
14015 STORE_F "Read token '", parm0_x;
14016 STORE_F Parser_Token, parm1_x;
14017 STORE_F "'", parm2_x;
14019 STORE_F PARSER_LOW, parm0_x;
14020 STORE_F return_x, parm1_x;
14021 CALL2 Parser_Print;
14022 CALL0 Parser_GetTokenType;
14023 STORE_F return_x, Parser_TokenType;
14024 EQ_F Parser_TokenType, PARSER_TT_BRACKETOPEN, temp_0;
14026 CALL0 Parser_ProcessDefine;
14027 CALL0 Parser_GetToken;
14029 RETURN FILE_APPEND;
14033 float() Parser_GetTokenType = asm
14035 local float temp_0;
14036 EQ_S Parser_Token, "Item", temp_0;
14038 RETURN PARSER_TT_ITEM;
14040 EQ_S Parser_Token, "Template", temp_0;
14042 RETURN PARSER_TT_TEMPLATE;
14044 EQ_S Parser_Token, "Derive", temp_0;
14046 RETURN PARSER_TT_DERIVE;
14048 EQ_S Parser_Token, "DeriveTemplate", temp_0;
14050 RETURN PARSER_TT_DERIVETEMPLATE;
14052 EQ_S Parser_Token, "#define", temp_0;
14054 RETURN PARSER_TT_DEFINE;
14056 EQ_S Parser_Token, "Ignore", temp_0;
14058 RETURN PARSER_TT_IGNORE;
14060 EQ_S Parser_Token, "#undef", temp_0;
14062 RETURN PARSER_TT_UNDEF;
14064 EQ_S Parser_Token, "Namespace", temp_0;
14066 RETURN PARSER_TT_NAMESPACE;
14068 EQ_S Parser_Token, "#include", temp_0;
14070 RETURN PARSER_TT_INCLUDE;
14072 EQ_S Parser_Token, "}", temp_0;
14074 RETURN PARSER_TT_BRACECLOSE;
14076 EQ_S Parser_Token, "{", temp_0;
14078 RETURN PARSER_TT_BRACEOPEN;
14080 EQ_S Parser_Token, "[", temp_0;
14082 RETURN PARSER_TT_BRACKETOPEN;
14084 EQ_S Parser_Token, "]", temp_0;
14086 RETURN PARSER_TT_BRACKETCLOSE;
14087 RETURN PARSER_TT_TOKEN;
14091 void (float, string) _Parser_Print;
14092 void(float pLevel, string pText) _Parser_Print = asm
14094 local float temp_0;
14095 local float temp_1;
14096 EQ_F pLevel, KEY_GAME, temp_0;
14098 BITAND sys_debug_parser, pLevel, temp_1;
14099 OR temp_0, temp_1, temp_0;
14101 STORE_F "Parser: ", parm0_x;
14102 STORE_F pText, parm1_x;
14109 void(float pLevel, string pInfo) Parser_Print = asm
14111 local float temp_0;
14112 local float temp_1;
14113 EQ_F pLevel, KEY_GAME, temp_0;
14115 BITAND sys_debug_parser, pLevel, temp_1;
14116 OR temp_0, temp_1, temp_0;
14118 STORE_F Parser_LineNumber, parm0_x;
14120 STORE_F "Parser: ", parm0_x;
14121 STORE_F Parser_Filename, parm1_x;
14122 STORE_F ":", parm2_x;
14123 STORE_F return_x, parm3_x;
14124 STORE_F ": ", parm4_x;
14125 STORE_F pInfo, parm5_x;
14132 void(string pInfo) Parser_Error = asm
14134 STORE_F Parser_LineNumber, parm0_x;
14136 STORE_F "Parser: ", parm0_x;
14137 STORE_F Parser_Filename, parm1_x;
14138 STORE_F ":", parm2_x;
14139 STORE_F return_x, parm3_x;
14140 STORE_F ": Error: '", parm4_x;
14142 STORE_F Parser_Token, parm0_x;
14143 STORE_F "' not expected (", parm1_x;
14144 STORE_F pInfo, parm2_x;
14148 STORE_F Parser_File, parm0_x;
14150 STORE_F "Error in the menu parser!", parm0_x;
14155 void () ArrayGet*PARSER_TT_TEXT;
14156 void(float pType) Parser_Expect = asm
14158 local float temp_0;
14159 local float temp_1;
14160 local float temp_5;
14161 CALL0 Parser_GetToken;
14162 NOT_F return_x, temp_0;
14164 NE_F Parser_TokenType, pType, temp_1;
14166 NE_F Parser_TokenType, PARSER_TT_BRACKETOPEN, temp_5;
14167 AND temp_1, temp_5, temp_1;
14168 OR temp_0, temp_1, temp_0;
14170 SUB_F pType, PARSER_TT_ITEM, parm0_x;
14171 CALL1 ArrayGet*PARSER_TT_TEXT;
14172 STORE_F "expected ", parm0_x;
14173 STORE_F return_x, parm1_x;
14175 STORE_F return_x, parm0_x;
14176 CALL1 Parser_Error;
14180 void(string pNamespace) Parser_IncludeFile = asm
14182 local float lTokenNum;
14183 local float lNumTokens;
14184 local float lLineNumber;
14186 local string lLine;
14187 local string lFilename;
14188 local float temp_0;
14189 STORE_F PARSER_TT_TOKEN, parm0_x;
14190 CALL1 Parser_Expect;
14191 STORE_F "#include: Including file '", parm0_x;
14192 STORE_F Parser_Token, parm1_x;
14193 STORE_F "'", parm2_x;
14195 STORE_F PARSER_INFO, parm0_x;
14196 STORE_F return_x, parm1_x;
14197 CALL2 Parser_Print;
14198 STORE_F Parser_Token, parm0_x;
14199 CALL1 Util_AltStringPrepare;
14200 STORE_F return_x, parm0_x;
14201 CALL1 String_Normal;
14202 STORE_F " {'", parm0_x;
14203 STORE_F return_x, parm1_x;
14204 STORE_F "'", parm2_x;
14206 STORE_F Parser_FileList, parm0_x;
14207 STORE_F return_x, parm1_x;
14208 CALL2 String_Append;
14209 STORE_S return_x, Parser_FileList;
14210 STORE_S Parser_Filename, lFilename;
14211 STORE_S Parser_Line, lLine;
14212 STORE_F Parser_File, lFile;
14213 STORE_F Parser_LineNumber, lLineNumber;
14214 STORE_F Parser_NumTokens, lNumTokens;
14215 STORE_F Parser_TokenNum, lTokenNum;
14216 SUB_F Parser_IncludeDepth, FILE_APPEND, Parser_IncludeDepth;
14217 GT Parser_IncludeDepth, K_SPACE, temp_0;
14219 STORE_F KEY_GAME, parm0_x;
14220 STORE_F "#include: Maximum depth reached!", parm1_x;
14221 CALL2 Parser_Print;
14223 STORE_F Parser_Token, parm0_x;
14224 STORE_F pNamespace, parm1_x;
14225 CALL2 Parser_ParseFile;
14226 SUB_F Parser_IncludeDepth, FILE_APPEND, Parser_IncludeDepth;
14227 STORE_S lFilename, Parser_Filename;
14228 STORE_S lLine, Parser_Line;
14229 STORE_F lFile, Parser_File;
14230 STORE_F lLineNumber, Parser_LineNumber;
14231 CALL0 Parser_TokenizeLine;
14232 STORE_F lNumTokens, Parser_NumTokens;
14233 STORE_F lTokenNum, Parser_TokenNum;
14234 STORE_F Parser_FileList, parm0_x;
14235 STORE_F "}", parm1_x;
14236 CALL2 String_Append;
14237 STORE_S return_x, Parser_FileList;
14241 void() Parser_ParseDefine = asm
14243 local float locked_1586;
14244 local float lOldLine;
14245 local entity lDefine;
14246 local float temp_1;
14247 STORE_F KEY_MENU, parm0_x;
14248 STORE_F "Parsing #define...", parm1_x;
14249 CALL2 Parser_Print;
14250 STORE_F PARSER_TT_TOKEN, parm0_x;
14251 CALL1 Parser_Expect;
14252 STORE_ENT Parser_DefineChain, lDefine;
14254 INDIRECT_S lDefine, name, locked_1586;
14255 EQ_S Parser_Token, locked_1586, locked_1586;
14256 IFNOT locked_1586, 11;
14257 STORE_F "#define: [", parm0_x;
14258 STORE_F Parser_Token, parm1_x;
14259 STORE_F "] already defined!", parm2_x;
14261 STORE_F PARSER_INFO, parm0_x;
14262 STORE_F return_x, parm1_x;
14263 CALL2 Parser_Print;
14264 STORE_F PARSER_TT_TOKEN, parm0_x;
14265 CALL1 Parser_Expect;
14267 INDIRECT_E lDefine, chain, lDefine;
14270 STORE_ENT return_x, lDefine;
14271 ADDRESS lDefine, type, locked_1586;
14272 STOREP_S "Parser_Define", locked_1586;
14273 ADDRESS lDefine, name, locked_1586;
14274 STORE_F Parser_Token, parm0_x;
14276 STOREP_S return_x, locked_1586;
14277 STORE_F lDefine, parm0_x;
14278 STORE_F value, parm1_x;
14279 CALL2 String_EntityZone;
14280 STORE_F Parser_LineNumber, lOldLine;
14281 CALL0 Parser_GetToken;
14285 NE_F lOldLine, Parser_LineNumber, locked_1586;
14286 IFNOT locked_1586, 4;
14287 SUB_F Parser_TokenNum, FILE_APPEND, Parser_TokenNum;
14290 EQ_S Parser_Token, "\", locked_1586;
14291 IFNOT locked_1586, 3;
14292 ADD_F lOldLine, FILE_APPEND, lOldLine;
14294 INDIRECT_S lDefine, value, parm0_x;
14295 STORE_F """, parm1_x;
14296 STORE_F Parser_Token, parm2_x;
14297 STORE_F "" ", parm3_x;
14299 STORE_F lDefine, parm0_x;
14300 STORE_F value, parm1_x;
14301 STORE_F return_x, parm2_x;
14302 CALL3 String_EntitySet;
14304 INDIRECT_S lDefine, name, locked_1586;
14305 INDIRECT_S lDefine, value, temp_1;
14306 STORE_F " Name = '", parm0_x;
14307 STORE_F locked_1586, parm1_x;
14308 STORE_F "' Replacement = '", parm2_x;
14309 STORE_F temp_1, parm3_x;
14310 STORE_F "'", parm4_x;
14312 STORE_F PARSER_HIGH, parm0_x;
14313 STORE_F return_x, parm1_x;
14314 CALL2 Parser_Print;
14315 ADDRESS lDefine, chain, locked_1586;
14316 STOREP_ENT Parser_DefineChain, locked_1586;
14317 STORE_ENT lDefine, Parser_DefineChain;
14318 STORE_F PARSER_HIGH, parm0_x;
14319 STORE_F "Done parsing #define", parm1_x;
14320 CALL2 Parser_Print;
14324 void() Parser_ParseUndef = asm
14326 local entity lPrevious;
14327 local entity lEntity;
14328 local float temp_0;
14329 local float temp_1;
14330 STORE_F PARSER_HIGH, parm0_x;
14331 STORE_F "Parsing #undef...", parm1_x;
14332 CALL2 Parser_Print;
14333 STORE_F PARSER_TT_TOKEN, parm0_x;
14334 CALL1 Parser_Expect;
14335 STORE_ENT null_entity, lPrevious;
14336 STORE_ENT Parser_DefineChain, lEntity;
14338 INDIRECT_S lEntity, name, temp_0;
14339 EQ_S temp_0, Parser_Token, temp_0;
14341 IFNOT lPrevious, 5;
14342 ADDRESS lPrevious, chain, temp_0;
14343 INDIRECT_E lEntity, chain, temp_1;
14344 STOREP_ENT temp_1, temp_0;
14346 INDIRECT_E lEntity, chain, Parser_DefineChain;
14347 STORE_F "#undef: Removed [", parm0_x;
14348 STORE_F Parser_Token, parm1_x;
14349 STORE_F "]", parm2_x;
14351 STORE_F PARSER_INFO, parm0_x;
14352 STORE_F return_x, parm1_x;
14353 CALL2 Parser_Print;
14354 INDIRECT_S lEntity, name, parm0_x;
14356 INDIRECT_S lEntity, value, parm0_x;
14358 STORE_F lEntity, parm0_x;
14361 STORE_ENT lEntity, lPrevious;
14362 INDIRECT_E lEntity, chain, lEntity;
14364 STORE_F "#undef: [", parm0_x;
14365 STORE_F Parser_Token, parm1_x;
14366 STORE_F "] not found!", parm2_x;
14368 STORE_F PARSER_INFO, parm0_x;
14369 STORE_F return_x, parm1_x;
14370 CALL2 Parser_Print;
14374 void() Parser_ProcessDefine = asm
14376 local entity lDefine;
14377 local string lConstant;
14378 local float temp_0;
14379 local float temp_1;
14380 STORE_F PARSER_TT_TOKEN, parm0_x;
14381 CALL1 Parser_Expect;
14382 STORE_F Parser_Token, parm0_x;
14384 STORE_S return_x, lConstant;
14385 STORE_F PARSER_TT_BRACKETCLOSE, parm0_x;
14386 CALL1 Parser_Expect;
14387 STORE_F "Processing [", parm0_x;
14388 STORE_F lConstant, parm1_x;
14389 STORE_F "]...", parm2_x;
14391 STORE_F PARSER_HIGH, parm0_x;
14392 STORE_F return_x, parm1_x;
14393 CALL2 Parser_Print;
14394 STORE_ENT Parser_DefineChain, lDefine;
14396 INDIRECT_S lDefine, name, temp_0;
14397 EQ_S temp_0, lConstant, temp_0;
14399 INDIRECT_S lDefine, value, temp_0;
14400 STORE_F " ", parm0_x;
14401 STORE_F temp_0, parm1_x;
14403 STORE_F Parser_Line, parm0_x;
14404 STORE_F return_x, parm1_x;
14406 STORE_S return_x, Parser_Line;
14407 STORE_F "Replacing with '", parm0_x;
14408 STORE_F Parser_Line, parm1_x;
14409 STORE_F "'", parm2_x;
14411 STORE_F PARSER_HIGH, parm0_x;
14412 STORE_F return_x, parm1_x;
14413 CALL2 Parser_Print;
14414 LT Parser_TokenNum, Parser_NumTokens, temp_0;
14416 STORE_F Parser_TokenNum, parm0_x;
14418 STORE_F Parser_Line, parm0_x;
14419 STORE_F " "", parm1_x;
14420 STORE_F return_x, parm2_x;
14421 STORE_F """, parm3_x;
14423 STORE_F Parser_Line, parm0_x;
14424 STORE_F return_x, parm1_x;
14426 STORE_S return_x, Parser_Line;
14427 STORE_F Parser_TokenNum, temp_1;
14428 ADD_F Parser_TokenNum, FILE_APPEND, Parser_TokenNum;
14430 CALL0 Parser_TokenizeLine;
14431 STORE_F lConstant, parm0_x;
14434 INDIRECT_E lDefine, chain, lDefine;
14436 STORE_F lConstant, parm0_x;
14437 CALL1 String_Normal;
14438 STORE_F Parser_Token, parm0_x;
14439 STORE_F return_x, parm1_x;
14441 STORE_S return_x, Parser_Token;
14442 STORE_F "#define: Couldn't find constant '", parm0_x;
14443 STORE_F Parser_Token, parm1_x;
14444 STORE_F "'!", parm2_x;
14446 STORE_F KEY_GAME, parm0_x;
14447 STORE_F return_x, parm1_x;
14448 CALL2 Parser_Print;
14449 STORE_F "constant not found", parm0_x;
14450 CALL1 Parser_Error;
14454 void(string pNamespace) Parser_ParseDefinition = asm
14456 local entity lEntity;
14457 local float temp_0;
14458 local float temp_1;
14459 EQ_F Parser_TokenType, PARSER_TT_ITEM, temp_0;
14461 STORE_F pNamespace, parm0_x;
14462 CALL1 Parser_ParseItem;
14464 EQ_F Parser_TokenType, PARSER_TT_TEMPLATE, temp_0;
14466 STORE_F pNamespace, parm0_x;
14467 CALL1 Parser_ParseItem;
14468 STORE_ENT return_x, lEntity;
14469 ADDRESS lEntity, flag, temp_0;
14470 INDIRECT_F lEntity, flag, temp_1;
14471 BITOR temp_1, FLAG_TEMPLATE, temp_1;
14472 STOREP_F temp_1, temp_0;
14474 EQ_F Parser_TokenType, PARSER_TT_DEFINE, temp_0;
14476 CALL0 Parser_ParseDefine;
14478 EQ_F Parser_TokenType, PARSER_TT_DERIVE, temp_0;
14480 STORE_F pNamespace, parm0_x;
14481 CALL1 Parser_DeriveItem;
14483 EQ_F Parser_TokenType, PARSER_TT_DERIVETEMPLATE, temp_0;
14485 STORE_F pNamespace, parm0_x;
14486 CALL1 Parser_DeriveItem;
14487 STORE_ENT return_x, lEntity;
14488 ADDRESS lEntity, flag, temp_0;
14489 INDIRECT_F lEntity, flag, temp_1;
14490 BITOR temp_1, FLAG_TEMPLATE, temp_1;
14491 STOREP_F temp_1, temp_0;
14493 EQ_F Parser_TokenType, PARSER_TT_UNDEF, temp_0;
14495 CALL0 Parser_ParseUndef;
14497 EQ_F Parser_TokenType, PARSER_TT_NAMESPACE, temp_0;
14499 STORE_F pNamespace, parm0_x;
14500 CALL1 Parser_ParseNamespace;
14502 EQ_F Parser_TokenType, PARSER_TT_INCLUDE, temp_0;
14504 STORE_F pNamespace, parm0_x;
14505 CALL1 Parser_IncludeFile;
14507 EQ_F Parser_TokenType, PARSER_TT_IGNORE, temp_0;
14509 CALL0 Parser_ParseIgnore;
14511 STORE_F "couldn't find type in Parser_ParseDef", parm0_x;
14512 CALL1 Parser_Error;
14516 void() Parser_ParseIgnore = asm
14518 local float lBraceCount;
14519 local float temp_0;
14520 STORE_F PARSER_TT_BRACEOPEN, parm0_x;
14521 CALL1 Parser_Expect;
14522 STORE_F FILE_APPEND, lBraceCount;
14523 GT lBraceCount, KEY_GAME, temp_0;
14525 CALL0 Parser_GetToken;
14529 EQ_F Parser_TokenType, PARSER_TT_BRACEOPEN, temp_0;
14531 ADD_F lBraceCount, FILE_APPEND, lBraceCount;
14533 EQ_F Parser_TokenType, PARSER_TT_BRACECLOSE, temp_0;
14535 SUB_F lBraceCount, FILE_APPEND, lBraceCount;
14540 entity(string pNamespace) Parser_ParseItem = asm
14542 local entity lEntity;
14543 local string lEntityText;
14544 local string lNamespace;
14545 local float temp_0;
14546 STORE_F PARSER_HIGH, parm0_x;
14547 STORE_F "Parsing item..", parm1_x;
14548 CALL2 Parser_Print;
14549 STORE_F PARSER_TT_TOKEN, parm0_x;
14550 CALL1 Parser_Expect;
14551 STORE_F "{ "type" "Item_", parm0_x;
14552 STORE_F Parser_Token, parm1_x;
14553 STORE_F "" ", parm2_x;
14555 STORE_F return_x, parm0_x;
14557 STORE_S return_x, lEntityText;
14558 STORE_F " Type = '", parm0_x;
14559 STORE_F Parser_Token, parm1_x;
14560 STORE_F "'", parm2_x;
14562 STORE_F PARSER_HIGH, parm0_x;
14563 STORE_F return_x, parm1_x;
14564 CALL2 Parser_Print;
14565 STORE_F PARSER_TT_TOKEN, parm0_x;
14566 CALL1 Parser_Expect;
14567 NE_S pNamespace, "", temp_0;
14569 STORE_F pNamespace, parm0_x;
14570 STORE_F "::", parm1_x;
14571 STORE_F Parser_Token, parm2_x;
14573 STORE_F return_x, parm0_x;
14575 STORE_S return_x, lNamespace;
14577 STORE_F Parser_Token, parm0_x;
14579 STORE_S return_x, lNamespace;
14580 STORE_F lEntityText, parm0_x;
14581 STORE_F ""name" "", parm1_x;
14582 STORE_F lNamespace, parm2_x;
14583 STORE_F "" ", parm3_x;
14585 STORE_F lEntityText, parm0_x;
14586 STORE_F return_x, parm1_x;
14588 STORE_S return_x, lEntityText;
14589 STORE_F lEntityText, parm0_x;
14590 STORE_F ""parent" "", parm1_x;
14591 STORE_F pNamespace, parm2_x;
14592 STORE_F "" ", parm3_x;
14594 STORE_F lEntityText, parm0_x;
14595 STORE_F return_x, parm1_x;
14597 STORE_S return_x, lEntityText;
14598 STORE_F " Name = '", parm0_x;
14599 STORE_F Parser_Token, parm1_x;
14600 STORE_F "' Parent = '", parm2_x;
14601 STORE_F pNamespace, parm3_x;
14602 STORE_F "' Namespace = '", parm4_x;
14603 STORE_F lNamespace, parm5_x;
14604 STORE_F "'", parm6_x;
14606 STORE_F PARSER_HIGH, parm0_x;
14607 STORE_F return_x, parm1_x;
14608 CALL2 Parser_Print;
14609 STORE_F PARSER_TT_BRACEOPEN, parm0_x;
14610 CALL1 Parser_Expect;
14611 STORE_F lNamespace, parm0_x;
14612 STORE_F lEntityText, parm1_x;
14613 CALL2 Parser_ParseEntity;
14614 STORE_S return_x, lEntityText;
14616 STORE_ENT return_x, lEntity;
14617 STORE_F lEntity, parm0_x;
14618 STORE_F lEntityText, parm1_x;
14619 CALL2 parseentitydata;
14620 STORE_F lEntityText, parm0_x;
14622 STORE_F lNamespace, parm0_x;
14624 INDIRECT_S lEntity, name, temp_0;
14625 STORE_F "Parsing '", parm0_x;
14626 STORE_F temp_0, parm1_x;
14627 STORE_F "' finished", parm2_x;
14629 STORE_F PARSER_HIGH, parm0_x;
14630 STORE_F return_x, parm1_x;
14631 CALL2 Parser_Print;
14636 void(entity pSource, entity pTarget) Parser_CloneChildren = asm
14638 local float locked_1585;
14639 local float locked_1586;
14640 local string lModifierString;
14641 local entity lClone;
14642 local entity lNode;
14643 local float temp_5;
14644 STORE_ENT null_entity, lNode;
14645 INDIRECT_S pSource, name, locked_1586;
14646 STORE_F lNode, parm0_x;
14647 STORE_F parent, parm1_x;
14648 STORE_F locked_1586, parm2_x;
14650 STORE_ENT return_x, lNode;
14651 NE_E return_x, null_entity, locked_1586;
14652 IFNOT locked_1586, 37;
14654 STORE_ENT return_x, lClone;
14655 STORE_F lNode, parm0_x;
14656 STORE_F lClone, parm1_x;
14658 INDIRECT_F lClone, flag, locked_1586;
14659 BITAND locked_1586, FLAG_TEMPLATE, locked_1586;
14660 IFNOT locked_1586, 5;
14661 ADDRESS lClone, flag, locked_1586;
14662 INDIRECT_F lClone, flag, locked_1585;
14663 SUB_F locked_1585, FLAG_TEMPLATE, locked_1585;
14664 STOREP_F locked_1585, locked_1586;
14665 INDIRECT_S pTarget, name, locked_1586;
14666 INDIRECT_S lNode, name, locked_1585;
14667 INDIRECT_S pSource, name, parm0_x;
14669 STORE_F locked_1585, parm0_x;
14670 STORE_F return_x, parm1_x;
14671 STORE_F 100000.000000, parm2_x;
14673 INDIRECT_S pTarget, name, locked_1585;
14674 STORE_F "{ name "", parm0_x;
14675 STORE_F locked_1586, parm1_x;
14676 STORE_F return_x, parm2_x;
14677 STORE_F "" parent "", parm3_x;
14678 STORE_F locked_1585, parm4_x;
14679 STORE_F "" }", parm5_x;
14681 STORE_S return_x, lModifierString;
14682 STORE_F lClone, parm0_x;
14683 STORE_F lModifierString, parm1_x;
14684 CALL2 parseentitydata;
14685 STORE_F lNode, parm0_x;
14686 STORE_F lClone, parm1_x;
14687 CALL2 Parser_CloneChildren;
14692 entity(string pNamespace) Parser_DeriveItem = asm
14694 local entity lEntity;
14695 local string lBaseName;
14696 local entity lBase;
14697 local string lEntityText;
14698 local string lNamespace;
14699 local float temp_0;
14700 local float temp_1;
14701 STORE_F PARSER_HIGH, parm0_x;
14702 STORE_F "Parsing derived item..", parm1_x;
14703 CALL2 Parser_Print;
14704 STORE_F PARSER_TT_TOKEN, parm0_x;
14705 CALL1 Parser_Expect;
14706 STORE_F Parser_Token, parm0_x;
14707 STORE_F KEY_GAME, parm1_x;
14708 STORE_F KEY_MENU, parm2_x;
14710 EQ_S return_x, "::", temp_0;
14712 STORE_F Parser_Token, parm0_x;
14714 SUB_F return_x, KEY_MENU, temp_0;
14715 STORE_F Parser_Token, parm0_x;
14716 STORE_F KEY_MENU, parm1_x;
14717 STORE_F temp_0, parm2_x;
14719 STORE_F return_x, parm0_x;
14721 STORE_S return_x, lBaseName;
14723 EQ_S pNamespace, "", temp_0;
14725 STORE_F Parser_Token, parm0_x;
14727 STORE_S return_x, lBaseName;
14729 STORE_F pNamespace, parm0_x;
14730 STORE_F "::", parm1_x;
14731 STORE_F Parser_Token, parm2_x;
14733 STORE_F return_x, parm0_x;
14735 STORE_S return_x, lBaseName;
14736 STORE_F null_entity, parm0_x;
14737 STORE_F name, parm1_x;
14738 STORE_F lBaseName, parm2_x;
14740 EQ_E return_x, null_entity, temp_0;
14742 STORE_F lBaseName, parm0_x;
14743 STORE_F Parser_Token, parm1_x;
14745 STORE_S return_x, lBaseName;
14746 STORE_F " Base = '", parm0_x;
14747 STORE_F lBaseName, parm1_x;
14748 STORE_F "'", parm2_x;
14750 STORE_F PARSER_HIGH, parm0_x;
14751 STORE_F return_x, parm1_x;
14752 CALL2 Parser_Print;
14753 STORE_F null_entity, parm0_x;
14754 STORE_F name, parm1_x;
14755 STORE_F lBaseName, parm2_x;
14757 STORE_ENT return_x, lBase;
14758 EQ_E lBase, null_entity, temp_0;
14760 STORE_F "couldnt find item", parm0_x;
14761 CALL1 Parser_Error;
14762 STORE_F PARSER_TT_TOKEN, parm0_x;
14763 CALL1 Parser_Expect;
14764 NE_S pNamespace, "", temp_0;
14766 STORE_F pNamespace, parm0_x;
14767 STORE_F "::", parm1_x;
14768 STORE_F Parser_Token, parm2_x;
14770 STORE_F return_x, parm0_x;
14772 STORE_S return_x, lNamespace;
14774 STORE_F Parser_Token, parm0_x;
14776 STORE_S return_x, lNamespace;
14777 STORE_F "{ "name" "", parm0_x;
14778 STORE_F lNamespace, parm1_x;
14779 STORE_F "" ", parm2_x;
14781 STORE_F return_x, parm0_x;
14783 STORE_S return_x, lEntityText;
14784 STORE_F lEntityText, parm0_x;
14785 STORE_F ""parent" "", parm1_x;
14786 STORE_F pNamespace, parm2_x;
14787 STORE_F "" ", parm3_x;
14789 STORE_F lEntityText, parm0_x;
14790 STORE_F return_x, parm1_x;
14792 STORE_S return_x, lEntityText;
14793 STORE_F " Name = '", parm0_x;
14794 STORE_F Parser_Token, parm1_x;
14795 STORE_F "' Parent = '", parm2_x;
14796 STORE_F pNamespace, parm3_x;
14797 STORE_F "' Namespace = '", parm4_x;
14798 STORE_F lNamespace, parm5_x;
14799 STORE_F "'", parm6_x;
14801 STORE_F PARSER_HIGH, parm0_x;
14802 STORE_F return_x, parm1_x;
14803 CALL2 Parser_Print;
14804 STORE_F PARSER_TT_BRACEOPEN, parm0_x;
14805 CALL1 Parser_Expect;
14806 STORE_F lNamespace, parm0_x;
14807 STORE_F lEntityText, parm1_x;
14808 CALL2 Parser_ParseEntity;
14809 STORE_S return_x, lEntityText;
14811 STORE_ENT return_x, lEntity;
14812 STORE_F lBase, parm0_x;
14813 STORE_F lEntity, parm1_x;
14815 INDIRECT_F lEntity, flag, temp_0;
14816 BITAND temp_0, FLAG_TEMPLATE, temp_0;
14818 ADDRESS lEntity, flag, temp_0;
14819 INDIRECT_F lEntity, flag, temp_1;
14820 SUB_F temp_1, FLAG_TEMPLATE, temp_1;
14821 STOREP_F temp_1, temp_0;
14822 STORE_F lEntity, parm0_x;
14823 STORE_F lEntityText, parm1_x;
14824 CALL2 parseentitydata;
14825 STORE_F lEntityText, parm0_x;
14827 STORE_F lNamespace, parm0_x;
14829 STORE_F lBaseName, parm0_x;
14831 STORE_F lBase, parm0_x;
14832 STORE_F lEntity, parm1_x;
14833 CALL2 Parser_CloneChildren;
14834 INDIRECT_S lEntity, name, temp_0;
14835 STORE_F "Parsing '", parm0_x;
14836 STORE_F temp_0, parm1_x;
14837 STORE_F "' finished", parm2_x;
14839 STORE_F PARSER_HIGH, parm0_x;
14840 STORE_F return_x, parm1_x;
14841 CALL2 Parser_Print;
14846 string(string pNamespace, string pEntityText) Parser_ParseEntity = asm
14848 local float temp_0;
14849 CALL0 Parser_GetToken;
14850 IFNOT return_x, 31;
14851 EQ_F Parser_TokenType, PARSER_TT_TOKEN, temp_0;
14853 STORE_F pEntityText, parm0_x;
14854 STORE_F """, parm1_x;
14855 STORE_F Parser_Token, parm2_x;
14856 STORE_F "" ", parm3_x;
14858 STORE_F pEntityText, parm0_x;
14859 STORE_F return_x, parm1_x;
14861 STORE_S return_x, pEntityText;
14862 STORE_F PARSER_TT_TOKEN, parm0_x;
14863 CALL1 Parser_Expect;
14864 STORE_F pEntityText, parm0_x;
14865 STORE_F """, parm1_x;
14866 STORE_F Parser_Token, parm2_x;
14867 STORE_F "" ", parm3_x;
14869 STORE_F pEntityText, parm0_x;
14870 STORE_F return_x, parm1_x;
14872 STORE_S return_x, pEntityText;
14874 EQ_F Parser_TokenType, PARSER_TT_BRACECLOSE, temp_0;
14878 STORE_F pNamespace, parm0_x;
14879 CALL1 Parser_ParseDefinition;
14881 STORE_F pEntityText, parm0_x;
14882 STORE_F " }", parm1_x;
14883 CALL2 String_Append;
14888 void(string pNamespace) Parser_ParseNamespace = asm
14890 local string lNamespace;
14891 local float temp_0;
14892 STORE_F PARSER_HIGH, parm0_x;
14893 STORE_F "Parsing Namespace...", parm1_x;
14894 CALL2 Parser_Print;
14895 STORE_F PARSER_TT_TOKEN, parm0_x;
14896 CALL1 Parser_Expect;
14897 NE_S pNamespace, "", temp_0;
14899 STORE_F pNamespace, parm0_x;
14900 STORE_F "::", parm1_x;
14901 STORE_F Parser_Token, parm2_x;
14903 STORE_F return_x, parm0_x;
14905 STORE_S return_x, lNamespace;
14907 STORE_F Parser_Token, parm0_x;
14909 STORE_S return_x, lNamespace;
14910 STORE_F " Subnamespace = '", parm0_x;
14911 STORE_F Parser_Token, parm1_x;
14912 STORE_F "' New namespace = '", parm2_x;
14913 STORE_F lNamespace, parm3_x;
14914 STORE_F "'", parm4_x;
14916 STORE_F PARSER_HIGH, parm0_x;
14917 STORE_F return_x, parm1_x;
14918 CALL2 Parser_Print;
14919 STORE_F PARSER_TT_BRACEOPEN, parm0_x;
14920 CALL1 Parser_Expect;
14921 CALL0 Parser_GetToken;
14923 EQ_F Parser_TokenType, PARSER_TT_BRACECLOSE, temp_0;
14926 STORE_F lNamespace, parm0_x;
14927 CALL1 Parser_ParseDefinition;
14929 STORE_F "Finished parsing Namespace. Namespace = '", parm0_x;
14930 STORE_F pNamespace, parm1_x;
14931 STORE_F "'", parm2_x;
14933 STORE_F PARSER_HIGH, parm0_x;
14934 STORE_F return_x, parm1_x;
14935 CALL2 Parser_Print;
14936 STORE_F lNamespace, parm0_x;
14941 void(string pFilename, string pNamespace) Parser_ParseFile = asm
14943 local float temp_0;
14944 STORE_F pFilename, parm0_x;
14946 STORE_S return_x, Parser_Filename;
14947 STORE_F Parser_Filename, parm0_x;
14948 STORE_F KEY_GAME, parm1_x;
14950 STORE_F return_x, Parser_File;
14951 EQ_F Parser_File, ERR_CANNOTOPEN, temp_0;
14953 STORE_F "Parser: Couldn't open ", parm0_x;
14954 STORE_F Parser_Filename, parm1_x;
14959 CALL0 String_Create;
14960 STORE_S return_x, Parser_Line;
14961 STORE_F KEY_GAME, Parser_LineNumber;
14962 STORE_F KEY_GAME, Parser_TokenNum;
14963 STORE_F KEY_GAME, Parser_NumTokens;
14964 CALL0 Parser_GetToken;
14966 STORE_F pNamespace, parm0_x;
14967 CALL1 Parser_ParseDefinition;
14969 STORE_F Parser_File, parm0_x;
14971 STORE_F Parser_Filename, parm0_x;
14973 STORE_F Parser_Line, parm0_x;
14978 void() Parser_Init = asm
14980 CALL0 String_Create;
14981 STORE_S return_x, Parser_Token;
14982 STORE_ENT null_entity, Parser_DefineChain;
14983 STORE_F KEY_GAME, Parser_IncludeDepth;
14984 CALL0 String_Create;
14985 STORE_S return_x, Parser_FileList;
14989 void() Parser_Quit = asm
14991 local entity lNext;
14992 local float temp_0;
14993 STORE_F PARSER_HIGH, parm0_x;
14994 STORE_F "Deleting #defines:", parm1_x;
14995 CALL2 _Parser_Print;
14996 IFNOT Parser_DefineChain, 18;
14997 INDIRECT_E Parser_DefineChain, chain, lNext;
14998 INDIRECT_S Parser_DefineChain, name, temp_0;
14999 STORE_F " [", parm0_x;
15000 STORE_F temp_0, parm1_x;
15001 STORE_F "]", parm2_x;
15003 STORE_F PARSER_HIGH, parm0_x;
15004 STORE_F return_x, parm1_x;
15005 CALL2 _Parser_Print;
15006 INDIRECT_S Parser_DefineChain, name, parm0_x;
15008 INDIRECT_S Parser_DefineChain, value, parm0_x;
15010 STORE_F Parser_DefineChain, parm0_x;
15012 STORE_ENT lNext, Parser_DefineChain;
15014 STORE_F Parser_Token, parm0_x;
15016 STORE_F Parser_FileList, parm0_x;
15021 void(string pMain) Parser_ParseMenu = asm
15024 STORE_F pMain, parm0_x;
15026 STORE_S return_x, pMain;
15027 STORE_F Parser_FileList, parm0_x;
15028 STORE_F pMain, parm1_x;
15029 CALL2 Util_AltStringPush;
15030 STORE_S return_x, Parser_FileList;
15031 STORE_F pMain, parm0_x;
15032 STORE_F "", parm1_x;
15033 CALL2 Parser_ParseFile;
15034 STORE_F "Files parsed: ", parm0_x;
15035 STORE_F Parser_FileList, parm1_x;
15037 STORE_F PARSER_INFO, parm0_x;
15038 STORE_F return_x, parm1_x;
15039 CALL2 _Parser_Print;
15040 STORE_F pMain, parm0_x;
15046 void() Menu_InitGarbageStats = asm
15048 STORE_F KEY_GAME, Menu_GarbageFrameCount;
15049 STORE_F KEY_GAME, Menu_GarbageToggleCount;
15053 void() Menu_ResetGarbageStats = asm
15055 IFNOT Menu_GarbageFrameCount, 7;
15056 STORE_F Menu_GarbageFrameCount, parm0_x;
15058 STORE_F "Menu: GC: ", parm0_x;
15059 STORE_F return_x, parm1_x;
15060 STORE_F " items marked for frame deletion but couldnt be reached!
15063 IFNOT Menu_GarbageToggleCount, 7;
15064 STORE_F Menu_GarbageToggleCount, parm0_x;
15066 STORE_F "Menu: GC: ", parm0_x;
15067 STORE_F return_x, parm1_x;
15068 STORE_F " items marked for toggle delition but couldnt be reached!
15071 STORE_F KEY_GAME, Menu_GarbageFrameCount;
15072 STORE_F KEY_GAME, Menu_GarbageToggleCount;
15076 float(entity pItem) Menu_CheckForGarbage = asm
15078 local float temp_0;
15079 INDIRECT_F pItem, _runFlag, temp_0;
15080 BITAND temp_0, RUNFLAG_DELETEFRAME, temp_0;
15082 STORE_F pItem, parm0_x;
15083 CALL1 Menu_RemoveItem;
15084 SUB_F Menu_GarbageFrameCount, FILE_APPEND, Menu_GarbageFrameCount;
15085 RETURN FILE_APPEND;
15090 void(float pToggle) Menu_CollectGarbage = asm
15092 local float locked_1586;
15093 local entity lNode;
15094 local float temp_1;
15095 STORE_ENT null_entity, lNode;
15097 IF Menu_GarbageFrameCount, 1;
15098 OR Menu_GarbageFrameCount, Menu_GarbageToggleCount, locked_1586;
15099 IFNOT locked_1586, 5;
15100 STORE_F lNode, parm0_x;
15102 STORE_ENT return_x, lNode;
15103 NE_E return_x, null_entity, temp_1;
15104 AND locked_1586, temp_1, locked_1586;
15105 IFNOT locked_1586, 15;
15106 INDIRECT_F lNode, _runFlag, locked_1586;
15107 BITAND locked_1586, RUNFLAG_DELETEFRAME, locked_1586;
15108 IFNOT locked_1586, 5;
15109 STORE_F lNode, parm0_x;
15110 CALL1 Menu_RemoveItem;
15111 SUB_F Menu_GarbageFrameCount, FILE_APPEND, Menu_GarbageFrameCount;
15113 INDIRECT_F lNode, _runFlag, locked_1586;
15114 BITAND locked_1586, RUNFLAG_DELETETOGGLE, locked_1586;
15115 IFNOT locked_1586, 4;
15116 STORE_F lNode, parm0_x;
15117 CALL1 Menu_RemoveItem;
15118 SUB_F Menu_GarbageToggleCount, FILE_APPEND, Menu_GarbageToggleCount;
15121 IFNOT Menu_GarbageFrameCount, 5;
15122 STORE_F lNode, parm0_x;
15124 STORE_ENT return_x, lNode;
15125 NE_E return_x, null_entity, locked_1586;
15126 AND Menu_GarbageFrameCount, locked_1586, locked_1586;
15127 IFNOT locked_1586, 8;
15128 INDIRECT_F lNode, _runFlag, locked_1586;
15129 BITAND locked_1586, RUNFLAG_DELETEFRAME, locked_1586;
15130 IFNOT locked_1586, 4;
15131 STORE_F lNode, parm0_x;
15132 CALL1 Menu_RemoveItem;
15133 SUB_F Menu_GarbageFrameCount, FILE_APPEND, Menu_GarbageFrameCount;
15138 void(entity pItem) Menu_DeleteAfterFrame = asm
15140 local float temp_0;
15141 local float temp_1;
15142 INDIRECT_F pItem, _runFlag, temp_0;
15143 BITAND temp_0, RUNFLAG_DELETEFRAME, temp_0;
15145 INDIRECT_F pItem, _runFlag, temp_0;
15146 BITAND temp_0, RUNFLAG_DELETETOGGLE, temp_0;
15148 ADDRESS pItem, _runFlag, temp_0;
15149 INDIRECT_F pItem, _runFlag, temp_1;
15150 ADD_F temp_1, RUNFLAG_DELETEFRAME, temp_1;
15151 SUB_F temp_1, RUNFLAG_DELETETOGGLE, temp_1;
15152 STOREP_F temp_1, temp_0;
15153 SUB_F Menu_GarbageToggleCount, FILE_APPEND, Menu_GarbageToggleCount;
15155 ADDRESS pItem, _runFlag, temp_0;
15156 INDIRECT_F pItem, _runFlag, temp_1;
15157 ADD_F temp_1, RUNFLAG_DELETEFRAME, temp_1;
15158 STOREP_F temp_1, temp_0;
15159 ADD_F Menu_GarbageFrameCount, FILE_APPEND, Menu_GarbageFrameCount;
15163 void(entity pItem) Menu_DeleteAfterToggle = asm
15165 local float temp_0;
15166 local float temp_1;
15167 INDIRECT_F pItem, _runFlag, temp_0;
15168 BITAND temp_0, RUNFLAG_DELETEFRAME, temp_0;
15170 INDIRECT_F pItem, _runFlag, temp_1;
15171 BITAND temp_1, RUNFLAG_DELETETOGGLE, temp_1;
15172 OR temp_0, temp_1, temp_0;
15175 ADDRESS pItem, _runFlag, temp_0;
15176 INDIRECT_F self, _runFlag, temp_1;
15177 ADD_F temp_1, RUNFLAG_DELETETOGGLE, temp_1;
15178 STOREP_F temp_1, temp_0;
15179 ADD_F Menu_GarbageToggleCount, FILE_APPEND, Menu_GarbageToggleCount;
15183 void() Key_Init = asm
15188 void() Key_Quit = asm
15193 void() Key_Display = asm
15195 STORE_F KEY_MENU, parm0_x;
15200 void() Key_Update = asm
15202 local float temp_0;
15204 NE_F return_x, KEY_MENU, temp_0;
15210 void() Key_Hide = asm
15212 STORE_F KEY_GAME, parm0_x;
15217 void(string pKey) Key_Unbind = asm
15219 STORE_F "unbind ", parm0_x;
15220 STORE_F pKey, parm1_x;
15224 STORE_F return_x, parm0_x;
15229 string(float pKey) Key_GetName = asm
15231 STORE_F pKey, parm0_x;
15232 CALL1 keynumtostring;
15237 float(string pKey) Key_GetNum = asm
15239 STORE_F pKey, parm0_x;
15240 CALL1 stringtokeynum;
15245 string(string pCommand) Key_GetBindList = asm
15247 STORE_F pCommand, parm0_x;
15248 CALL1 findkeysforcommand;
15249 STORE_F return_x, parm0_x;
15255 void(string pKey, string pCommand) Key_Bind = asm
15257 STORE_F "bind "", parm0_x;
15258 STORE_F pKey, parm1_x;
15259 STORE_F "" "", parm2_x;
15260 STORE_F pCommand, parm3_x;
15264 STORE_F return_x, parm0_x;
15269 void(float pNum, string pCommand) Key_LimitBinds = asm
15271 local float lValue;
15272 local float lMaxnum;
15273 local float lCounter;
15274 local string lAltlist;
15275 local float temp_0;
15276 local float temp_1;
15277 STORE_F pCommand, parm0_x;
15278 CALL1 Key_GetBindList;
15279 STORE_S return_x, lAltlist;
15280 STORE_F lAltlist, parm0_x;
15281 CALL1 Util_GetAltStringCount;
15282 STORE_F return_x, lMaxnum;
15283 STORE_F KEY_GAME, lCounter;
15284 LT lCounter, lMaxnum, temp_0;
15286 STORE_F lAltlist, parm0_x;
15287 STORE_F lCounter, parm1_x;
15288 CALL2 Util_GetAltStringItem;
15289 STORE_F return_x, parm0_x;
15290 CALL1 String_Normal;
15291 STORE_F return_x, parm0_x;
15293 STORE_F return_x, lValue;
15294 EQ_F lValue, ERR_CANNOTOPEN, temp_0;
15297 GE lCounter, pNum, temp_0;
15299 STORE_F lValue, parm0_x;
15301 STORE_F return_x, parm0_x;
15303 ADD_F lCounter, FILE_APPEND, lCounter;
15305 STORE_F lAltlist, parm0_x;
15310 void() Cursor_Init = asm
15312 STORE_F CURSOR_PATH, parm0_x;
15313 CALL1 Gfx_Precache;
15315 STORE_S CURSOR_PATH, Cursor_Current;
15317 STORE_S "ui/mousepointer.tga", Cursor_Current;
15318 STORE_F Cursor_Current, parm0_x;
15319 CALL1 Gfx_Precache;
15320 STORE_V '0.000000 0.000000 0.000000', Cursor_Relative;
15321 STORE_V '0.000000 0.000000 0.000000', Cursor_Position;
15322 STORE_FNC Cursor_DefaultAnimation, Cursor_Animation;
15326 void() Cursor_Quit = asm
15331 void() Cursor_Display = asm
15333 STORE_F FILE_APPEND, parm0_x;
15334 CALL1 setmousetarget;
15338 void() Cursor_Hide = asm
15340 STORE_F KEY_MENU, parm0_x;
15341 CALL1 setmousetarget;
15345 void() Cursor_Draw = asm
15347 local vector lSize;
15349 local float temp_0;
15350 local vector temp_2;
15351 STORE_F Cursor_Current, parm0_x;
15352 CALL1 Gfx_GetImageSize;
15353 MUL_VF return, FILE_APPEND, lSize;
15354 MUL_F lSize_x, Cursor_Offset_x, temp_0;
15355 ADD_F Cursor_Position_x, temp_0, lPos_x;
15356 MUL_F lSize_y, Cursor_Offset_y, temp_0;
15357 ADD_F Cursor_Position_y, temp_0, lPos_y;
15358 STORE_F KEY_GAME, lPos_z;
15359 STORE_V lPos, parm0;
15360 STORE_F Cursor_Current, parm1_x;
15361 STORE_V lSize, parm2;
15362 STORE_V Cursor_Color, parm3;
15363 STORE_F FILE_APPEND, parm4_x;
15364 STORE_F KEY_GAME, parm5_x;
15369 void() Cursor_Update = asm
15371 local vector lRelPos;
15372 local float temp_0;
15374 STORE_V return, lRelPos;
15375 STORE_V lRelPos, parm0;
15376 CALL1 Gfx_ConToMen;
15377 STORE_V return, lRelPos;
15378 MUL_F lRelPos_x, Cursor_Speed_x, Cursor_Relative_x;
15379 MUL_F lRelPos_y, Cursor_Speed_y, Cursor_Relative_y;
15380 ADD_F Cursor_Position_x, Cursor_Relative_x, temp_0;
15381 STORE_F KEY_GAME, parm0_x;
15382 STORE_F temp_0, parm1_x;
15383 STORE_F Gfx_Menu_Width, parm2_x;
15385 SUB_F return_x, Cursor_Position_x, Cursor_Relative_x;
15386 ADD_F Cursor_Position_y, Cursor_Relative_y, temp_0;
15387 STORE_F KEY_GAME, parm0_x;
15388 STORE_F temp_0, parm1_x;
15389 STORE_F Gfx_Menu_Height, parm2_x;
15391 SUB_F return_x, Cursor_Position_y, Cursor_Relative_y;
15392 ADD_F Cursor_Position_x, Cursor_Relative_x, Cursor_Position_x;
15393 ADD_F Cursor_Position_y, Cursor_Relative_y, Cursor_Position_y;
15394 STORE_F KEY_GAME, Cursor_Position_z;
15395 CALL0 Cursor_Animation;
15399 void() Cursor_DefaultAnimation = asm
15404 void(vector pRelPos, string pText, vector pScale, vector pColor, float pAlpha, float pDrawFlag) Cursor_PrintInfo = asm
15406 local float locked_1586;
15407 local vector lSize;
15408 local vector lPosition;
15409 local float temp_1;
15410 local vector temp_2;
15411 STORE_F Cursor_Current, parm0_x;
15412 CALL1 Gfx_GetImageSize;
15413 MUL_VF return, FILE_APPEND, lSize;
15414 NE_F pRelPos_x, KEY_GAME, locked_1586;
15415 IFNOT locked_1586, 28;
15416 GT pRelPos_x, KEY_GAME, locked_1586;
15417 IFNOT locked_1586, 7;
15418 ADD_F Cursor_Offset_x, 0.500000, locked_1586;
15419 DIV_F pRelPos_x, KEY_MENU, temp_1;
15420 ADD_F locked_1586, temp_1, locked_1586;
15421 MUL_F lSize_x, locked_1586, locked_1586;
15422 ADD_F Cursor_Position_x, locked_1586, lPosition_x;
15424 LT pRelPos_x, KEY_GAME, locked_1586;
15425 IFNOT locked_1586, 10;
15426 ADD_F Cursor_Offset_x, 0.500000, locked_1586;
15427 DIV_F pRelPos_x, KEY_MENU, temp_1;
15428 ADD_F locked_1586, temp_1, locked_1586;
15429 MUL_F lSize_x, locked_1586, locked_1586;
15430 ADD_F Cursor_Position_x, locked_1586, locked_1586;
15431 STORE_F pText, parm0_x;
15433 MUL_F pScale_x, return_x, temp_1;
15434 SUB_F locked_1586, temp_1, lPosition_x;
15435 ADD_F Cursor_Offset_y, 0.500000, locked_1586;
15436 DIV_F pRelPos_y, KEY_MENU, temp_1;
15437 ADD_F locked_1586, temp_1, locked_1586;
15438 MUL_F lSize_y, locked_1586, locked_1586;
15439 ADD_F Cursor_Position_y, locked_1586, locked_1586;
15440 DIV_F pScale_y, KEY_MENU, temp_1;
15441 SUB_F locked_1586, temp_1, lPosition_y;
15443 ADD_F Cursor_Offset_x, 0.500000, locked_1586;
15444 MUL_F lSize_x, locked_1586, locked_1586;
15445 ADD_F Cursor_Position_x, locked_1586, locked_1586;
15446 STORE_F pText, parm0_x;
15448 MUL_F pScale_x, return_x, temp_1;
15449 DIV_F temp_1, KEY_MENU, temp_1;
15450 SUB_F locked_1586, temp_1, lPosition_x;
15451 NE_F pRelPos_y, KEY_GAME, locked_1586;
15452 IFNOT locked_1586, 17;
15453 GT pRelPos_y, KEY_GAME, locked_1586;
15454 IFNOT locked_1586, 8;
15455 ADD_F Cursor_Offset_y, 0.500000, locked_1586;
15456 DIV_F pRelPos_y, KEY_MENU, temp_1;
15457 SUB_F locked_1586, temp_1, locked_1586;
15458 MUL_F lSize_y, locked_1586, locked_1586;
15459 ADD_F Cursor_Position_y, locked_1586, locked_1586;
15460 SUB_F locked_1586, pScale_y, lPosition_y;
15462 LT pRelPos_y, KEY_GAME, locked_1586;
15463 IFNOT locked_1586, 6;
15464 ADD_F Cursor_Offset_y, 0.500000, locked_1586;
15465 DIV_F pRelPos_y, KEY_MENU, temp_1;
15466 SUB_F locked_1586, temp_1, locked_1586;
15467 MUL_F lSize_y, locked_1586, locked_1586;
15468 ADD_F Cursor_Position_y, locked_1586, lPosition_y;
15469 STORE_V lPosition, parm0;
15470 STORE_F pText, parm1_x;
15471 STORE_V pScale, parm2;
15472 STORE_V pColor, parm3;
15473 STORE_F pAlpha, parm4_x;
15474 STORE_F pDrawFlag, parm5_x;
15475 CALL6 Gfx_DrawString;
15479 void (string) _Sound_DPrint;
15480 void(string pText) _Sound_DPrint = asm
15482 IFNOT sys_debug_sound, 3;
15483 STORE_F pText, parm0_x;
15488 float(string pSnd) Sound_Precache = asm
15490 local float temp_0;
15491 STORE_F "Precaching sound '", parm0_x;
15492 STORE_F pSnd, parm1_x;
15496 STORE_F return_x, parm0_x;
15497 CALL1 _Sound_DPrint;
15498 EQ_S pSnd, "", temp_0;
15501 STORE_F pSnd, parm0_x;
15502 CALL1 precache_sound;
15503 NE_S pSnd, return_x, temp_0;
15507 RETURN FILE_APPEND;
15511 void(string pSnd) Sound_Free = asm
15516 void(string pSnd) Sound_Play = asm
15518 STORE_F "Playing sound '", parm0_x;
15519 STORE_F pSnd, parm1_x;
15523 STORE_F return_x, parm0_x;
15524 CALL1 _Sound_DPrint;
15525 STORE_F pSnd, parm0_x;
15531 float _Gfx_LastTime;
15532 float _Gfx_FrameCount;
15533 void () _Gfx_UpdateFPS;
15534 void() _Gfx_UpdateFPS = asm
15536 local float lDeltaTime;
15537 local float temp_0;
15538 ADD_F _Gfx_FrameCount, FILE_APPEND, _Gfx_FrameCount;
15539 SUB_F Timer_Time, _Gfx_LastTime, lDeltaTime;
15540 LT FILE_APPEND, lDeltaTime, temp_0;
15542 DIV_F _Gfx_FrameCount, lDeltaTime, _Gfx_FPS;
15543 STORE_F Timer_Time, _Gfx_LastTime;
15544 STORE_F KEY_GAME, _Gfx_FrameCount;
15548 void () _Gfx_UpdateRes;
15549 void() _Gfx_UpdateRes = asm
15551 local float temp_0;
15552 STORE_F "vid_conwidth", parm0_x;
15554 STORE_F return_x, Gfx_Real_Width;
15555 STORE_F "vid_conheight", parm0_x;
15557 STORE_F return_x, Gfx_Real_Height;
15558 STORE_F CVAR_SCMENU_MENU_WIDTH, parm0_x;
15560 STORE_F return_x, Gfx_Menu_Width;
15561 STORE_F CVAR_SCMENU_MENU_HEIGHT, parm0_x;
15563 STORE_F return_x, Gfx_Menu_Height;
15564 EQ_F Gfx_Menu_Width, KEY_GAME, temp_0;
15566 STORE_F SLIST_LEGACY_LINE1, Gfx_Menu_Width;
15567 EQ_F Gfx_Menu_Height, KEY_GAME, temp_0;
15569 STORE_F K_JOY1, Gfx_Menu_Height;
15573 void() Gfx_Init = asm
15575 local string lHeight;
15576 local string lWidth;
15577 STORE_F SLIST_LEGACY_LINE1, parm0_x;
15579 STORE_S return_x, lWidth;
15580 STORE_F K_JOY1, parm0_x;
15582 STORE_S return_x, lHeight;
15583 STORE_F CVAR_SCMENU_MENU_WIDTH, parm0_x;
15584 STORE_F lWidth, parm1_x;
15585 STORE_F FILE_APPEND, parm2_x;
15586 CALL3 registercvar;
15587 STORE_F CVAR_SCMENU_MENU_HEIGHT, parm0_x;
15588 STORE_F lHeight, parm1_x;
15589 STORE_F FILE_APPEND, parm2_x;
15590 CALL3 registercvar;
15591 STORE_F KEY_GAME, parm0_x;
15593 STORE_F CVAR_SCMENU_SHOWFPS, parm0_x;
15594 STORE_F return_x, parm1_x;
15595 STORE_F KEY_GAME, parm2_x;
15596 CALL3 registercvar;
15597 CALL0 _Gfx_UpdateRes;
15601 void() Gfx_Quit = asm
15606 void() Gfx_Display = asm
15608 CALL0 Gfx_ResetClipArea;
15612 void() Gfx_Hide = asm
15617 void() Gfx_Update = asm
15619 CALL0 _Gfx_UpdateRes;
15620 CALL0 _Gfx_UpdateFPS;
15624 void() Gfx_Draw = asm
15626 local vector lPosition;
15627 local vector lScale;
15628 local string lText;
15629 local float temp_0;
15630 STORE_F CVAR_SCMENU_SHOWFPS, parm0_x;
15632 IFNOT return_x, 21;
15633 STORE_F _Gfx_FPS, parm0_x;
15635 STORE_F return_x, parm0_x;
15637 STORE_F "FPS: ", parm0_x;
15638 STORE_F return_x, parm1_x;
15640 STORE_S return_x, lText;
15641 STORE_V '15.000000 15.000000 0.000000', lScale;
15642 STORE_F KEY_GAME, lPosition_x;
15643 SUB_F Gfx_Menu_Height, lScale_y, temp_0;
15644 SUB_F temp_0, SLIST_SERVERREPLYCOUNT, lPosition_y;
15645 STORE_F KEY_GAME, lPosition_z;
15646 STORE_V lPosition, parm0;
15647 STORE_F lText, parm1_x;
15648 STORE_V lScale, parm2;
15649 STORE_V Cursor_Color, parm3;
15650 STORE_F FILE_APPEND, parm4_x;
15651 STORE_F KEY_GAME, parm5_x;
15652 CALL6 Gfx_DrawString;
15656 float(string pPic) Gfx_IsCached = asm
15658 STORE_F pPic, parm0_x;
15664 float(string pPic) Gfx_Precache = asm
15666 local float temp_0;
15667 EQ_S pPic, "", temp_0;
15670 STORE_F pPic, parm0_x;
15673 RETURN FILE_APPEND;
15674 STORE_F pPic, parm0_x;
15675 CALL1 precache_pic;
15676 EQ_S return_x, pPic, temp_0;
15678 RETURN FILE_APPEND;
15683 void(string pPic) Gfx_Free = asm
15688 vector(string pPic) Gfx_GetImageSize = asm
15690 STORE_F pPic, parm0_x;
15691 CALL1 drawgetimagesize;
15696 vector(vector pPos) Gfx_ConToMen = asm
15698 local float temp_0;
15699 MUL_F pPos_x, Gfx_Menu_Width, temp_0;
15700 DIV_F temp_0, Gfx_Real_Width, pPos_x;
15701 MUL_F pPos_y, Gfx_Menu_Height, temp_0;
15702 DIV_F temp_0, Gfx_Real_Height, pPos_y;
15703 STORE_F KEY_GAME, pPos_z;
15708 vector(vector pPos) Gfx_MenToCon = asm
15710 local float temp_0;
15711 MUL_F pPos_x, Gfx_Real_Width, temp_0;
15712 DIV_F temp_0, Gfx_Menu_Width, pPos_x;
15713 MUL_F pPos_y, Gfx_Real_Height, temp_0;
15714 DIV_F temp_0, Gfx_Menu_Height, pPos_y;
15715 STORE_F KEY_GAME, pPos_z;
15720 void() Gfx_ResetClipArea = asm
15722 CALL0 drawresetcliparea;
15726 vector (vector) _Gfx_FitCenter;
15727 vector(vector pPosition) _Gfx_FitCenter = asm
15729 local vector temp_2;
15730 ADD_V pPosition, '0.375000 0.375000 0.000000', temp_2;
15735 float(vector pPosition, float pCharacter, vector pScale, vector pRGB, float pAlpha, float pFlag) Gfx_DrawCharacter = asm
15737 STORE_V pPosition, parm0;
15738 CALL1 Gfx_MenToCon;
15739 STORE_V return, parm0;
15740 CALL1 _Gfx_FitCenter;
15741 STORE_V return, pPosition;
15742 STORE_V pScale, parm0;
15743 CALL1 Gfx_MenToCon;
15744 STORE_V return, pScale;
15745 STORE_V pPosition, parm0;
15746 STORE_F pCharacter, parm1_x;
15747 STORE_V pScale, parm2;
15748 STORE_V pRGB, parm3;
15749 STORE_F pAlpha, parm4_x;
15750 STORE_F pFlag, parm5_x;
15751 CALL6 drawcharacter;
15756 float(vector pPosition, string pText, vector pScale, vector pRGB, float pAlpha, float pFlag) Gfx_DrawString = asm
15758 STORE_V pPosition, parm0;
15759 CALL1 Gfx_MenToCon;
15760 STORE_V return, parm0;
15761 CALL1 _Gfx_FitCenter;
15762 STORE_V return, pPosition;
15763 STORE_V pScale, parm0;
15764 CALL1 Gfx_MenToCon;
15765 STORE_V return, pScale;
15766 STORE_V pPosition, parm0;
15767 STORE_F pText, parm1_x;
15768 STORE_V pScale, parm2;
15769 STORE_V pRGB, parm3;
15770 STORE_F pAlpha, parm4_x;
15771 STORE_F pFlag, parm5_x;
15777 float(vector pPosition, string pPicture, vector pSize, vector pRGB, float pAlpha, float pFlag) Gfx_DrawPic = asm
15779 STORE_V pPosition, parm0;
15780 CALL1 Gfx_MenToCon;
15781 STORE_V return, parm0;
15782 CALL1 _Gfx_FitCenter;
15783 STORE_V return, pPosition;
15784 STORE_V pSize, parm0;
15785 CALL1 Gfx_MenToCon;
15786 STORE_V return, pSize;
15787 STORE_V pPosition, parm0;
15788 STORE_F pPicture, parm1_x;
15789 STORE_V pSize, parm2;
15790 STORE_V pRGB, parm3;
15791 STORE_F pAlpha, parm4_x;
15792 STORE_F pFlag, parm5_x;
15798 float(vector pPosition, vector pSize, vector pRGB, float pAlpha, float pFlag) Gfx_Fill = asm
15800 STORE_V pPosition, parm0;
15801 CALL1 Gfx_MenToCon;
15802 STORE_V return, parm0;
15803 CALL1 _Gfx_FitCenter;
15804 STORE_V return, pPosition;
15805 STORE_V pSize, parm0;
15806 CALL1 Gfx_MenToCon;
15807 STORE_V return, pSize;
15808 STORE_V pPosition, parm0;
15809 STORE_V pSize, parm1;
15810 STORE_V pRGB, parm2;
15811 STORE_F pAlpha, parm3_x;
15812 STORE_F pFlag, parm4_x;
15818 void(float pX, float pY, float pWidth, float pHeight) Gfx_SetClipArea = asm
15820 local vector lSize;
15821 local vector lPosition;
15822 local vector temp_2;
15823 STORE_F pX, lPosition_x;
15824 STORE_F pY, lPosition_y;
15825 STORE_F pWidth, lSize_x;
15826 STORE_F pHeight, lSize_y;
15827 STORE_V lPosition, parm0;
15828 CALL1 Gfx_MenToCon;
15829 STORE_V return, parm0;
15830 CALL1 _Gfx_FitCenter;
15831 STORE_V return, lPosition;
15832 STORE_V lSize, parm0;
15833 CALL1 Gfx_MenToCon;
15834 ADD_V return, Cursor_Speed, lSize;
15835 STORE_F lPosition_x, parm0_x;
15836 STORE_F lPosition_y, parm1_x;
15837 STORE_F lSize_x, parm2_x;
15838 STORE_F lSize_y, parm3_x;
15839 CALL4 drawsetcliparea;
15843 float _Timer_LastTime;
15844 void() Timer_Init = asm
15847 STORE_F return_x, Timer_Time;
15848 STORE_F KEY_GAME, Timer_Delta;
15852 void() Timer_Update = asm
15854 local float temp_0;
15855 STORE_F Timer_Time, _Timer_LastTime;
15857 STORE_F return_x, Timer_Time;
15858 SUB_F Timer_Time, _Timer_LastTime, Timer_Delta;
15862 void() Timer_Quit = asm
15867 void() HostCache_Init = asm
15869 STORE_F "cname", parm0_x;
15870 CALL1 gethostcacheindexforkey;
15871 STORE_F return_x, SLIST_FIELD_CNAME;
15872 STORE_F "ping", parm0_x;
15873 CALL1 gethostcacheindexforkey;
15874 STORE_F return_x, SLIST_FIELD_PING;
15875 STORE_F "game", parm0_x;
15876 CALL1 gethostcacheindexforkey;
15877 STORE_F return_x, SLIST_FIELD_GAME;
15878 STORE_F "mod", parm0_x;
15879 CALL1 gethostcacheindexforkey;
15880 STORE_F return_x, SLIST_FIELD_MOD;
15881 STORE_F "map", parm0_x;
15882 CALL1 gethostcacheindexforkey;
15883 STORE_F return_x, SLIST_FIELD_MAP;
15884 STORE_F "name", parm0_x;
15885 CALL1 gethostcacheindexforkey;
15886 STORE_F return_x, SLIST_FIELD_NAME;
15887 STORE_F "maxplayers", parm0_x;
15888 CALL1 gethostcacheindexforkey;
15889 STORE_F return_x, SLIST_FIELD_MAXPLAYERS;
15890 STORE_F "numplayers", parm0_x;
15891 CALL1 gethostcacheindexforkey;
15892 STORE_F return_x, SLIST_FIELD_NUMPLAYERS;
15893 STORE_F "protocol", parm0_x;
15894 CALL1 gethostcacheindexforkey;
15895 STORE_F return_x, SLIST_FIELD_PROTOCOL;
15899 void() HostCache_Update = asm
15901 STORE_F KEY_GAME, parm0_x;
15902 CALL1 gethostcachevalue;
15903 STORE_F return_x, HostCache_ViewCount;
15904 STORE_F FILE_APPEND, parm0_x;
15905 CALL1 gethostcachevalue;
15906 STORE_F return_x, HostCache_TotalCount;
15907 STORE_F KEY_MENU, parm0_x;
15908 CALL1 gethostcachevalue;
15909 STORE_F return_x, HostCache_MasterQueryCount;
15910 STORE_F KEY_UNKNOWN, parm0_x;
15911 CALL1 gethostcachevalue;
15912 STORE_F return_x, HostCache_MasterReplyCount;
15913 STORE_F CVAR_READONLY, parm0_x;
15914 CALL1 gethostcachevalue;
15915 STORE_F return_x, HostCache_ServerQueryCount;
15916 STORE_F SLIST_SERVERREPLYCOUNT, parm0_x;
15917 CALL1 gethostcachevalue;
15918 STORE_F return_x, HostCache_ServerReplyCount;
15919 STORE_F SLIST_SORTFIELD, parm0_x;
15920 CALL1 gethostcachevalue;
15921 STORE_F return_x, HostCache_SortField;
15922 STORE_F SLIST_SORTDESCENDING, parm0_x;
15923 CALL1 gethostcachevalue;
15924 STORE_F return_x, HostCache_SortDescending;
15928 void() HostCache_ResortViewSet = asm
15930 CALL0 resorthostcache;
15931 CALL0 HostCache_Update;
15935 void() HostCache_RefreshHostCache = asm
15937 CALL0 refreshhostcache;
15938 CALL0 HostCache_Update;
15942 string() Property_Create = asm
15944 CALL0 String_Create;
15949 string(string pString) Property_Zone = asm
15951 STORE_F pString, parm0_x;
15957 string(string pString) Propery_Free = asm
15959 STORE_F pString, parm0_x;
15965 float(string pString) Property_Validate = asm
15967 local float lCount;
15968 local float temp_0;
15969 STORE_F pString, parm0_x;
15970 CALL1 Util_GetAltStringCount;
15971 STORE_F return_x, lCount;
15972 DIV_F lCount, KEY_MENU, parm0_x;
15974 DIV_F lCount, KEY_MENU, temp_0;
15975 NE_F return_x, temp_0, temp_0;
15977 STORE_F "Property_Validate", parm0_x;
15978 STORE_F "Invalid property string "", parm1_x;
15979 STORE_F pString, parm2_x;
15984 RETURN FILE_APPEND;
15988 float(string pString, string pName) Property_Exists = asm
15990 local float lCounter;
15991 local float lCount;
15992 local float temp_0;
15995 STORE_F pString, parm0_x;
15996 CALL1 Util_GetAltStringCount;
15997 STORE_F return_x, lCount;
15998 STORE_F KEY_GAME, lCounter;
15999 LT lCounter, lCount, temp_0;
16001 STORE_F pString, parm0_x;
16002 STORE_F lCounter, parm1_x;
16003 CALL2 Util_GetAltStringItem;
16004 STORE_F return_x, parm0_x;
16005 CALL1 String_Normal;
16006 EQ_S return_x, pName, temp_0;
16008 RETURN FILE_APPEND;
16009 ADD_F lCounter, KEY_MENU, lCounter;
16015 string(string pString, string pName, string pInitValue) Property_Register = asm
16017 local float lCounter;
16018 local float lCount;
16019 local float temp_0;
16022 STORE_F pString, parm0_x;
16023 CALL1 Util_GetAltStringCount;
16024 STORE_F return_x, lCount;
16025 STORE_F KEY_GAME, lCounter;
16026 LT lCounter, lCount, temp_0;
16028 STORE_F pString, parm0_x;
16029 STORE_F lCounter, parm1_x;
16030 CALL2 Util_GetAltStringItem;
16031 STORE_F return_x, parm0_x;
16032 CALL1 String_Normal;
16033 EQ_S return_x, pName, temp_0;
16036 ADD_F lCounter, KEY_MENU, lCounter;
16038 STORE_F pString, parm0_x;
16039 STORE_F pInitValue, parm1_x;
16040 CALL2 Util_AltStringPush;
16041 STORE_S return_x, pString;
16042 STORE_F pString, parm0_x;
16043 STORE_F pName, parm1_x;
16044 CALL2 Util_AltStringPush;
16045 STORE_S return_x, pString;
16050 string(string pString, string pName, string pValue) Property_Set = asm
16052 local float lCounter;
16053 local float lCount;
16054 local float temp_0;
16057 STORE_F pString, parm0_x;
16058 CALL1 Util_GetAltStringCount;
16059 STORE_F return_x, lCount;
16060 STORE_F KEY_GAME, lCounter;
16061 LT lCounter, lCount, temp_0;
16063 STORE_F pString, parm0_x;
16064 STORE_F lCounter, parm1_x;
16065 CALL2 Util_GetAltStringItem;
16066 STORE_F return_x, parm0_x;
16067 CALL1 String_Normal;
16068 EQ_S return_x, pName, temp_0;
16070 ADD_F lCounter, FILE_APPEND, temp_0;
16071 STORE_F pString, parm0_x;
16072 STORE_F temp_0, parm1_x;
16073 STORE_F pValue, parm2_x;
16074 CALL3 Util_SetAltStringItem;
16076 ADD_F lCounter, KEY_MENU, lCounter;
16078 STORE_F "Property_Set", parm0_x;
16079 STORE_F "The property "", parm1_x;
16080 STORE_F pName, parm2_x;
16081 STORE_F "" hasn't been declared!
16082 pString = "", parm3_x;
16083 STORE_F pString, parm4_x;
16084 STORE_F """, parm5_x;
16090 string(string pString, string pOldName, string pNewName) Property_Rename = asm
16092 local float lCounter;
16093 local float lCount;
16094 local float temp_0;
16097 STORE_F pString, parm0_x;
16098 CALL1 Util_GetAltStringCount;
16099 STORE_F return_x, lCount;
16100 STORE_F KEY_GAME, lCounter;
16101 LT lCounter, lCount, temp_0;
16103 STORE_F pString, parm0_x;
16104 STORE_F lCounter, parm1_x;
16105 CALL2 Util_GetAltStringItem;
16106 STORE_F return_x, parm0_x;
16107 CALL1 String_Normal;
16108 EQ_S return_x, pOldName, temp_0;
16110 STORE_F pString, parm0_x;
16111 STORE_F lCounter, parm1_x;
16112 STORE_F pNewName, parm2_x;
16113 CALL3 Util_SetAltStringItem;
16115 ADD_F lCounter, KEY_MENU, lCounter;
16117 STORE_F "Property_Rename", parm0_x;
16118 STORE_F "The property "", parm1_x;
16119 STORE_F pOldName, parm2_x;
16120 STORE_F "" hasn't been declared!
16121 pString = "", parm3_x;
16122 STORE_F pString, parm4_x;
16123 STORE_F """, parm5_x;
16129 string(string pString, string pName) Property_Delete = asm
16131 local float lCounter;
16132 local float lCount;
16133 local float temp_0;
16136 STORE_F pString, parm0_x;
16137 CALL1 Util_GetAltStringCount;
16138 STORE_F return_x, lCount;
16139 STORE_F KEY_GAME, lCounter;
16140 LT lCounter, lCount, temp_0;
16142 STORE_F pString, parm0_x;
16143 STORE_F lCounter, parm1_x;
16144 CALL2 Util_GetAltStringItem;
16145 STORE_F return_x, parm0_x;
16146 CALL1 String_Normal;
16147 EQ_S return_x, pName, temp_0;
16149 STORE_F pString, parm0_x;
16150 STORE_F lCounter, parm1_x;
16151 CALL2 Util_DelAltStringItem;
16152 STORE_S return_x, pString;
16153 STORE_F pString, parm0_x;
16154 STORE_F lCounter, parm1_x;
16155 CALL2 Util_DelAltStringItem;
16156 STORE_S return_x, pString;
16158 ADD_F lCounter, KEY_MENU, lCounter;
16160 STORE_F "Property_Delete", parm0_x;
16161 STORE_F "The property "", parm1_x;
16162 STORE_F pName, parm2_x;
16163 STORE_F "" hasn't been declared!
16164 pString = "", parm3_x;
16165 STORE_F pString, parm4_x;
16166 STORE_F """, parm5_x;
16172 string(string pString, string pName) Property_Get = asm
16174 local float lCounter;
16175 local float lCount;
16176 local float temp_0;
16179 STORE_F pString, parm0_x;
16180 CALL1 Util_GetAltStringCount;
16181 STORE_F return_x, lCount;
16182 STORE_F KEY_GAME, lCounter;
16183 LT lCounter, lCount, temp_0;
16185 STORE_F pString, parm0_x;
16186 STORE_F lCounter, parm1_x;
16187 CALL2 Util_GetAltStringItem;
16188 STORE_F return_x, parm0_x;
16189 CALL1 String_Normal;
16190 EQ_S return_x, pName, temp_0;
16192 ADD_F lCounter, FILE_APPEND, temp_0;
16193 STORE_F pString, parm0_x;
16194 STORE_F temp_0, parm1_x;
16195 CALL2 Util_GetAltStringItem;
16197 ADD_F lCounter, KEY_MENU, lCounter;
16199 STORE_F "The property "", parm0_x;
16200 STORE_F pName, parm1_x;
16201 STORE_F "" hasn't been declared!
16202 pString = "", parm2_x;
16203 STORE_F pString, parm3_x;
16204 STORE_F """, parm4_x;
16206 STORE_F "", parm0_x;
16212 string(string pString, string pName) Property_GetString = asm
16214 STORE_F pString, parm0_x;
16215 STORE_F pName, parm1_x;
16216 CALL2 Property_Get;
16221 float(string pString, string pName) Property_GetFloat = asm
16223 STORE_F pString, parm0_x;
16224 STORE_F pName, parm1_x;
16225 CALL2 Property_Get;
16226 STORE_F return_x, parm0_x;
16227 CALL1 String_Normal;
16228 STORE_F return_x, parm0_x;
16234 vector(string pString, string pName) Property_GetVector = asm
16236 STORE_F pString, parm0_x;
16237 STORE_F pName, parm1_x;
16238 CALL2 Property_Get;
16239 STORE_F return_x, parm0_x;
16240 CALL1 String_Normal;
16241 STORE_F return_x, parm0_x;
16247 entity(string pString, string pName) Property_GetEntity = asm
16249 STORE_F pString, parm0_x;
16250 STORE_F pName, parm1_x;
16251 CALL2 Property_GetFloat;
16252 STORE_F return_x, parm0_x;
16258 vector(string pText, vector pLast) Util_GetEndOfLine = asm
16260 local string lChar;
16261 local float temp_0;
16262 STORE_F pLast_y, pLast_x;
16263 STORE_F KEY_GAME, pLast_z;
16264 STORE_F pText, parm0_x;
16265 STORE_F pLast_x, parm1_x;
16266 STORE_F FILE_APPEND, parm2_x;
16268 STORE_S return_x, lChar;
16272 ADD_F pLast_x, FILE_APPEND, pLast_y;
16273 SUB_F pLast_x, FILE_APPEND, pLast_x;
16276 EQ_S lChar, "", temp_0;
16278 SUB_F pLast_x, FILE_APPEND, pLast_x;
16279 STORE_F pLast_x, pLast_y;
16282 ADD_F pLast_x, FILE_APPEND, pLast_x;
16283 ADD_F pLast_z, FILE_APPEND, pLast_z;
16288 vector(string pText, vector pLast, float pWrapLength) Util_GetEndOfWrappedLine = asm
16290 local string lChar;
16291 local float temp_0;
16292 STORE_F pLast_y, pLast_x;
16293 STORE_F KEY_GAME, pLast_z;
16294 STORE_F pText, parm0_x;
16295 STORE_F pLast_x, parm1_x;
16296 STORE_F FILE_APPEND, parm2_x;
16298 STORE_S return_x, lChar;
16302 SUB_F pLast_x, FILE_APPEND, pLast_x;
16303 ADD_F pLast_x, KEY_MENU, pLast_y;
16306 EQ_S lChar, "", temp_0;
16308 SUB_F pLast_x, FILE_APPEND, pLast_x;
16309 STORE_F pLast_x, pLast_y;
16312 ADD_F pLast_x, FILE_APPEND, pLast_x;
16313 ADD_F pLast_z, FILE_APPEND, pLast_z;
16314 SUB_F pWrapLength, FILE_APPEND, pWrapLength;
16316 STORE_F pLast_x, pLast_y;
16317 SUB_F pLast_x, FILE_APPEND, pLast_x;
16323 float _m_uid_counter;
16324 string() Util_CreateUID = asm
16326 local string lName;
16327 local float temp_0;
16328 STORE_F _m_uid_counter, parm0_x;
16330 STORE_F "M_UID_", parm0_x;
16331 STORE_F return_x, parm1_x;
16333 STORE_F return_x, parm0_x;
16335 STORE_S return_x, lName;
16336 ADD_F _m_uid_counter, FILE_APPEND, _m_uid_counter;
16341 string(float pNum) Util_GetUIDName = asm
16343 local string lName;
16344 STORE_F pNum, parm0_x;
16346 STORE_F "M_UID_", parm0_x;
16347 STORE_F return_x, parm1_x;
16349 STORE_F return_x, parm0_x;
16351 STORE_S return_x, lName;
16356 float(string pUid) Util_GetUIDNum = asm
16359 STORE_F pUid, parm0_x;
16360 STORE_F SLIST_SORTFIELD, parm1_x;
16361 STORE_F 100000.000000, parm2_x;
16363 STORE_S return_x, lNum;
16364 STORE_F lNum, parm0_x;
16370 string() String_Create = asm
16372 STORE_F "", parm0_x;
16378 string(string pStr) String_Zone = asm
16380 STORE_F pStr, parm0_x;
16386 string(string pStr) String_Normal = asm
16388 local string lResult;
16389 STORE_F pStr, parm0_x;
16391 STORE_S return_x, lResult;
16392 STORE_F pStr, parm0_x;
16398 string(string pStr) String_Free = asm
16400 STORE_F pStr, parm0_x;
16406 void(entity pEntity, .string pField) String_EntityCreate = asm
16408 local float locked_1586;
16409 ADDRESS pEntity, pField, locked_1586;
16410 STORE_F "", parm0_x;
16412 STOREP_S return_x, locked_1586;
16416 void(entity pEntity, .string pField) String_EntityZone = asm
16418 local float locked_1586;
16419 local float temp_1;
16420 ADDRESS pEntity, pField, locked_1586;
16421 INDIRECT_S pEntity, pField, parm0_x;
16423 STOREP_S return_x, locked_1586;
16427 void(entity pEntity, .string pField, string pSet) String_EntitySet = asm
16429 local float locked_1586;
16430 INDIRECT_S pEntity, pField, parm0_x;
16432 ADDRESS pEntity, pField, locked_1586;
16433 STORE_F pSet, parm0_x;
16435 STOREP_S return_x, locked_1586;
16439 void(entity pEntity, .string pField) String_EntityFree = asm
16441 local float temp_0;
16442 INDIRECT_S pEntity, pField, parm0_x;
16444 ADDRESS pEntity, pField, temp_0;
16445 STOREP_S "", temp_0;
16449 string(string pStr, string pApp) String_Append = asm
16451 STORE_F pStr, parm0_x;
16452 STORE_F pApp, parm1_x;
16454 STORE_F pStr, parm0_x;
16455 STORE_F return_x, parm1_x;
16461 string(string pStr, float pStart, float pLength) String_Substring = asm
16463 STORE_F pStr, parm0_x;
16464 STORE_F pStart, parm1_x;
16465 STORE_F pLength, parm2_x;
16467 STORE_F return_x, parm0_x;
16473 string(string pStr, string pSet) String_Set = asm
16475 STORE_F pStr, parm0_x;
16477 STORE_F pSet, parm0_x;
16483 bool(vector pPoint, vector pPos, vector pSize) Util_InRect = asm
16485 local float temp_0;
16486 local float temp_1;
16487 LT pPoint_x, pPos_x, temp_0;
16489 LT pPoint_y, pPos_y, temp_1;
16490 OR temp_0, temp_1, temp_0;
16492 ADD_F pPos_x, pSize_x, temp_1;
16493 GT pPoint_x, temp_1, temp_1;
16494 OR temp_0, temp_1, temp_0;
16496 ADD_F pPos_y, pSize_y, temp_1;
16497 GT pPoint_y, temp_1, temp_1;
16498 OR temp_0, temp_1, temp_0;
16501 RETURN FILE_APPEND;
16505 bool(vector pPos1, vector pSize1, vector pPos2, vector pSize2) Util_RectInRect = asm
16507 local vector lFPos2;
16508 local vector lFPos1;
16509 local float temp_0;
16510 local float temp_1;
16511 local vector temp_2;
16512 ADD_V pPos1, pSize1, lFPos1;
16513 ADD_V pPos2, pSize2, lFPos2;
16514 LE pPos1_x, lFPos2_x, temp_0;
16516 LE pPos2_x, lFPos1_x, temp_1;
16517 AND temp_0, temp_1, temp_0;
16519 LE pPos1_y, lFPos2_y, temp_1;
16520 AND temp_0, temp_1, temp_0;
16522 LE pPos2_y, lFPos1_y, temp_1;
16523 AND temp_0, temp_1, temp_0;
16526 RETURN FILE_APPEND;
16530 vector(vector pPoint, vector pClipPos, vector pClipSize) Util_GetClipDelta = asm
16532 local vector lPoint;
16533 local float temp_0;
16534 ADD_F pClipPos_x, pClipSize_x, temp_0;
16535 STORE_F pClipPos_x, parm0_x;
16536 STORE_F pPoint_x, parm1_x;
16537 STORE_F temp_0, parm2_x;
16539 SUB_F return_x, pPoint_x, lPoint_x;
16540 ADD_F pClipPos_y, pClipSize_y, temp_0;
16541 STORE_F pClipPos_y, parm0_x;
16542 STORE_F pPoint_y, parm1_x;
16543 STORE_F temp_0, parm2_x;
16545 SUB_F return_x, pPoint_y, lPoint_y;
16546 STORE_F KEY_GAME, lPoint_z;
16551 vector(vector pPos, vector pSize, vector pClipPos, vector pClipSize) Util_ClipRect = asm
16553 local vector lSize;
16554 local float temp_0;
16555 local float temp_1;
16556 ADD_F pPos_x, pSize_x, temp_0;
16557 ADD_F pClipPos_x, pClipSize_x, temp_1;
16558 STORE_F temp_0, parm0_x;
16559 STORE_F temp_1, parm1_x;
16561 SUB_F return_x, pPos_x, lSize_x;
16562 ADD_F pPos_y, pSize_y, temp_0;
16563 ADD_F pClipPos_y, pClipSize_y, temp_1;
16564 STORE_F temp_0, parm0_x;
16565 STORE_F temp_1, parm1_x;
16567 SUB_F return_x, pPos_y, lSize_y;
16568 STORE_F KEY_GAME, lSize_z;
16569 LE lSize_x, KEY_GAME, temp_0;
16571 LE lSize_y, KEY_GAME, temp_1;
16572 OR temp_0, temp_1, temp_0;
16574 RETURN '0.000000 0.000000 0.000000';
16579 string(string pStack) Util_ClipStack_Reset = asm
16581 STORE_F pStack, parm0_x;
16583 CALL0 String_Create;
16588 string(string pStack, vector pPos, vector pSize) Util_ClipStack_Push = asm
16590 local vector lDelta;
16591 local vector lOldSize;
16592 local vector lOldPos;
16593 local float temp_0;
16594 local float temp_1;
16595 local vector temp_2;
16596 STORE_F pStack, parm0_x;
16597 CALL1 Util_ClipStack_GetPosition;
16598 STORE_V return, lOldPos;
16599 STORE_F pStack, parm0_x;
16600 CALL1 Util_ClipStack_GetSize;
16601 STORE_V return, lOldSize;
16602 EQ_V pPos, '0.000000 0.000000 0.000000', temp_0;
16604 EQ_V pSize, '0.000000 0.000000 0.000000', temp_1;
16605 AND temp_0, temp_1, temp_0;
16607 STORE_V lOldPos, pPos;
16608 STORE_V lOldSize, pSize;
16610 NE_V lOldPos, '0.000000 0.000000 0.000000', temp_0;
16612 NE_V lOldSize, '0.000000 0.000000 0.000000', temp_1;
16613 OR temp_0, temp_1, temp_0;
16615 STORE_V pPos, parm0;
16616 STORE_V lOldPos, parm1;
16617 STORE_V lOldSize, parm2;
16618 CALL3 Util_GetClipDelta;
16619 STORE_V return, lDelta;
16620 ADD_V pPos, lDelta, pPos;
16621 SUB_V pSize, lDelta, temp_2;
16622 STORE_V pPos, parm0;
16623 STORE_V temp_2, parm1;
16624 STORE_V lOldPos, parm2;
16625 STORE_V lOldSize, parm3;
16626 CALL4 Util_ClipRect;
16627 STORE_V return, pSize;
16628 STORE_V pSize, parm0;
16630 STORE_F pStack, parm0_x;
16631 STORE_F return_x, parm1_x;
16632 CALL2 Util_AltStringPush;
16633 STORE_S return_x, pStack;
16634 STORE_V pPos, parm0;
16636 STORE_F pStack, parm0_x;
16637 STORE_F return_x, parm1_x;
16638 CALL2 Util_AltStringPush;
16639 STORE_S return_x, pStack;
16644 string(string pStack) Util_ClipStack_Pop = asm
16646 STORE_F pStack, parm0_x;
16647 CALL1 Util_AltStringPop;
16648 STORE_S return_x, pStack;
16649 STORE_F pStack, parm0_x;
16650 CALL1 Util_AltStringPop;
16651 STORE_S return_x, pStack;
16656 vector(string pStack) Util_ClipStack_GetPosition = asm
16658 STORE_F pStack, parm0_x;
16659 STORE_F KEY_GAME, parm1_x;
16660 CALL2 Util_GetAltStringItem;
16661 STORE_F return_x, parm0_x;
16662 CALL1 String_Normal;
16663 STORE_F return_x, parm0_x;
16669 vector(string pStack) Util_ClipStack_GetSize = asm
16671 STORE_F pStack, parm0_x;
16672 STORE_F FILE_APPEND, parm1_x;
16673 CALL2 Util_GetAltStringItem;
16674 STORE_F return_x, parm0_x;
16675 CALL1 String_Normal;
16676 STORE_F return_x, parm0_x;
16682 string(string pStack) Util_OriginStack_Reset = asm
16684 STORE_F pStack, parm0_x;
16686 CALL0 String_Create;
16691 string(string pStack, vector pOrigin) Util_OriginStack_Push = asm
16693 STORE_V pOrigin, parm0;
16695 STORE_F pStack, parm0_x;
16696 STORE_F return_x, parm1_x;
16697 CALL2 Util_AltStringPush;
16702 string(string pStack) Util_OriginStack_Pop = asm
16704 STORE_F pStack, parm0_x;
16705 CALL1 Util_AltStringPop;
16710 vector(string pStack) Util_OriginStack_Get = asm
16712 STORE_F pStack, parm0_x;
16713 CALL1 Util_GetAltStringTop;
16714 STORE_F return_x, parm0_x;
16715 CALL1 String_Normal;
16716 STORE_F return_x, parm0_x;
16722 float(string pStr) Util_GetAltStringCount = asm
16724 STORE_F pStr, parm0_x;
16725 CALL1 altstr_count;
16730 string(string pStr, float pCount) Util_GetAltStringItem = asm
16732 STORE_F pStr, parm0_x;
16733 STORE_F pCount, parm1_x;
16735 STORE_F return_x, parm0_x;
16741 string(string pAlt, float pIndex, string pSet) Util_SetAltStringItem = asm
16743 STORE_F pAlt, parm0_x;
16744 STORE_F pIndex, parm1_x;
16745 STORE_F pSet, parm2_x;
16747 STORE_F pAlt, parm0_x;
16748 STORE_F return_x, parm1_x;
16754 string(string pAlt, float pIndex) Util_DelAltStringItem = asm
16757 local string lLetter;
16758 local float lLength;
16759 local float lStart;
16760 local float lPosition;
16761 local float lCount;
16762 local float temp_0;
16763 local float temp_1;
16764 MUL_F pIndex, KEY_MENU, temp_0;
16765 ADD_F temp_0, FILE_APPEND, pIndex;
16766 STORE_F KEY_GAME, lPosition;
16767 STORE_F KEY_GAME, lCount;
16768 STORE_F pAlt, parm0_x;
16770 STORE_F return_x, lLength;
16771 LT lPosition, lLength, temp_0;
16773 LT lCount, pIndex, temp_1;
16774 AND temp_0, temp_1, temp_0;
16776 STORE_F pAlt, parm0_x;
16777 STORE_F lPosition, parm1_x;
16778 STORE_F FILE_APPEND, parm2_x;
16780 STORE_S return_x, lLetter;
16781 EQ_S lLetter, "'", temp_0;
16783 ADD_F lCount, FILE_APPEND, lCount;
16785 EQ_S lLetter, "\", temp_0;
16787 ADD_F lPosition, FILE_APPEND, lPosition;
16788 ADD_F lPosition, FILE_APPEND, lPosition;
16790 NE_F lCount, pIndex, temp_0;
16793 STORE_F lPosition, lStart;
16794 LT lPosition, lLength, temp_0;
16796 STORE_F pAlt, parm0_x;
16797 STORE_F lPosition, parm1_x;
16798 STORE_F FILE_APPEND, parm2_x;
16800 STORE_S return_x, lLetter;
16801 EQ_S lLetter, "'", temp_0;
16805 EQ_S lLetter, "\", temp_0;
16807 ADD_F lPosition, FILE_APPEND, lPosition;
16808 STORE_F lPosition, temp_1;
16809 ADD_F lPosition, FILE_APPEND, lPosition;
16811 GT lStart, KEY_GAME, temp_0;
16813 SUB_F lStart, FILE_APPEND, temp_0;
16814 STORE_F pAlt, parm0_x;
16815 STORE_F KEY_GAME, parm1_x;
16816 STORE_F temp_0, parm2_x;
16818 STORE_S return_x, lOut;
16819 SUB_F lLength, FILE_APPEND, temp_0;
16820 LT lPosition, temp_0, temp_0;
16822 ADD_F lPosition, FILE_APPEND, temp_0;
16823 SUB_F lLength, lPosition, temp_1;
16824 SUB_F temp_1, FILE_APPEND, temp_1;
16825 STORE_F pAlt, parm0_x;
16826 STORE_F temp_0, parm1_x;
16827 STORE_F temp_1, parm2_x;
16829 STORE_F lOut, parm0_x;
16830 STORE_F return_x, parm1_x;
16832 STORE_S return_x, lOut;
16833 STORE_F pAlt, parm0_x;
16834 STORE_F lOut, parm1_x;
16840 string(string pAlt, float pIndex, string pSet) Util_InsAltStringItem = asm
16842 STORE_F pAlt, parm0_x;
16843 STORE_F pIndex, parm1_x;
16844 STORE_F pSet, parm2_x;
16846 STORE_F pAlt, parm0_x;
16847 STORE_F return_x, parm1_x;
16853 string(string pString) Util_AltStringPrepare = asm
16855 STORE_F pString, parm0_x;
16856 CALL1 altstr_prepare;
16857 STORE_F return_x, parm0_x;
16863 string(string pAlt, string pPush) Util_AltStringPush = asm
16865 STORE_F pPush, parm0_x;
16866 CALL1 altstr_prepare;
16867 STORE_F "'", parm0_x;
16868 STORE_F return_x, parm1_x;
16869 STORE_F "'", parm2_x;
16870 STORE_F pAlt, parm3_x;
16872 STORE_F pAlt, parm0_x;
16873 STORE_F return_x, parm1_x;
16879 string(string pAlt, string pPush) Util_AltStringPushBack = asm
16881 STORE_F pPush, parm0_x;
16882 CALL1 altstr_prepare;
16883 STORE_F pAlt, parm0_x;
16884 STORE_F "'", parm1_x;
16885 STORE_F return_x, parm2_x;
16886 STORE_F "'", parm3_x;
16888 STORE_F pAlt, parm0_x;
16889 STORE_F return_x, parm1_x;
16895 string(string pAlt) Util_GetAltStringTop = asm
16897 STORE_F pAlt, parm0_x;
16898 STORE_F KEY_GAME, parm1_x;
16899 CALL2 Util_GetAltStringItem;
16904 string(string pAlt) Util_AltStringPop = asm
16906 local string lChar;
16907 local float lLength;
16908 local float lCount;
16910 local float temp_0;
16911 local float temp_1;
16912 STORE_F KEY_GAME, lCount;
16913 STORE_F pAlt, parm0_x;
16915 STORE_F return_x, lLength;
16916 STORE_F KEY_GAME, lPos;
16917 LT lPos, lLength, temp_0;
16919 LT lCount, KEY_MENU, temp_1;
16920 AND temp_0, temp_1, temp_0;
16922 STORE_F pAlt, parm0_x;
16923 STORE_F lPos, parm1_x;
16924 STORE_F FILE_APPEND, parm2_x;
16926 STORE_S return_x, lChar;
16927 EQ_S lChar, "\", temp_0;
16929 STORE_F lPos, temp_0;
16930 ADD_F lPos, FILE_APPEND, lPos;
16932 EQ_S lChar, "'", temp_0;
16934 STORE_F lCount, temp_0;
16935 ADD_F lCount, FILE_APPEND, lCount;
16936 STORE_F lPos, temp_1;
16937 ADD_F lPos, FILE_APPEND, lPos;
16939 SUB_F lLength, lPos, temp_0;
16940 STORE_F pAlt, parm0_x;
16941 STORE_F lPos, parm1_x;
16942 STORE_F temp_0, parm2_x;
16944 STORE_F pAlt, parm0_x;
16945 STORE_F return_x, parm1_x;
16951 void() Util_NullFunction = asm
16956 float() Util_TrueFunction = asm
16958 RETURN FILE_APPEND;
16962 float() Util_FalseFunction = asm
16968 string() Util_StringFuntion = asm
16974 vector() Util_VectorFunction = asm
16976 RETURN '0.000000 0.000000 0.000000';
16980 entity() Util_EntityFunction = asm
16982 RETURN null_entity;
16986 void () m_updategamestate;
16987 void() m_updategamestate = asm
16989 local float temp_0;
16990 STORE_F KEY_GAME, gamestatus;
16993 BITOR gamestatus, FILE_APPEND, gamestatus;
16995 EQ_F return_x, KEY_MENU, temp_0;
16997 BITOR gamestatus, KEY_MENU, gamestatus;
16998 STORE_F "developer", parm0_x;
17001 BITOR gamestatus, CVAR_READONLY, gamestatus;
17005 void() m_init = asm
17010 CALL0 HostCache_Init;
17015 void(float pKey, float pAscii) m_keydown = asm
17017 local float temp_0;
17020 STORE_F pKey, parm0_x;
17021 STORE_F pAscii, parm1_x;
17027 void() m_frame = asm
17029 CALL0 Timer_Update;
17030 CALL0 HostCache_Update;
17033 CALL0 Cursor_Update;
17038 void() m_draw = asm
17040 local float temp_0;
17041 local float temp_1;
17042 CALL0 m_updategamestate;
17043 IF Menu_Active, 11;
17044 BITAND gamestatus, KEY_MENU, temp_0;
17045 NOT_F temp_0, temp_0;
17047 BITAND gamestatus, CVAR_READONLY, temp_1;
17048 NOT_F temp_1, temp_1;
17049 AND temp_0, temp_1, temp_0;
17061 void() m_display = asm
17063 STORE_F FILE_APPEND, Menu_Active;
17064 CALL0 m_updategamestate;
17066 CALL0 Cursor_Display;
17068 CALL0 Menu_PerformReinit;
17072 void() m_hide = asm
17078 STORE_F KEY_GAME, Menu_Active;
17082 void() m_toggle = asm
17084 CALL0 Timer_Update;
17085 IFNOT Menu_Active, 3;
17092 void() m_shutdown = asm
17094 CALL0 Timer_Update;
17095 CALL0 Menu_Shutdown;
17100 STORE_F KEY_GAME, parm0_x;
17102 STORE_F KEY_MENU, parm0_x;
17103 CALL1 setmousetarget;
17107 void() ArrayGet*PARSER_TT_TEXT = asm
17109 local float indexg___;
17110 local float temp_0;
17111 BITAND offset_2806, offset_2806, offset_2806;
17112 LT offset_2806, 7.500000, temp_0;
17114 LT offset_2806, 3.500000, temp_0;
17116 LT offset_2806, 0.500000, temp_0;
17118 RETURN PARSER_TT_TEXT;
17119 LT offset_2806, ITEM_EDITBOX_SCROLLDISTANCE, temp_0;
17121 RETURN PARSER_TT_TEXT[1];
17122 LT offset_2806, 2.500000, temp_0;
17124 RETURN PARSER_TT_TEXT[2];
17125 LT offset_2806, 3.500000, temp_0;
17127 RETURN PARSER_TT_TEXT[3];
17128 LT offset_2806, 4.500000, temp_0;
17130 RETURN PARSER_TT_TEXT[4];
17131 LT offset_2806, 5.500000, temp_0;
17133 RETURN PARSER_TT_TEXT[5];
17134 LT offset_2806, 6.500000, temp_0;
17136 RETURN PARSER_TT_TEXT[6];
17137 LT offset_2806, 10.500000, temp_0;
17139 LT offset_2806, 7.500000, temp_0;
17141 RETURN PARSER_TT_TEXT[7];
17142 LT offset_2806, 8.500000, temp_0;
17144 RETURN PARSER_TT_TEXT[8];
17145 LT offset_2806, 9.500000, temp_0;
17147 RETURN PARSER_TT_TEXT[9];
17148 LT offset_2806, 10.500000, temp_0;
17150 RETURN PARSER_TT_TEXT[10];
17151 LT offset_2806, 11.500000, temp_0;
17153 RETURN PARSER_TT_TEXT[11];
17154 LT offset_2806, 12.500000, temp_0;
17156 RETURN PARSER_TT_TEXT[12];
17157 LT offset_2806, 13.500000, temp_0;
17159 RETURN PARSER_TT_TEXT[13];