11 #define EV_MakePlayerObserver(i, o) \ 12 i(entity, MUTATOR_ARGV_0_entity) \ 13 i(bool, MUTATOR_ARGV_1_bool) \ 18 #define EV_PutClientInServer(i, o) \ 19 i(entity, MUTATOR_ARGV_0_entity) \ 26 #define EV_ForbidSpawn(i, o) \ 27 i(entity, MUTATOR_ARGV_0_entity) \ 32 #define EV_AutoJoinOnConnection(i, o) \ 33 i(entity, MUTATOR_ARGV_0_entity) \ 38 #define EV_ForbidRandomStartWeapons(i, o) \ 39 i(entity, MUTATOR_ARGV_0_entity) \ 44 #define EV_PlayerSpawn(i, o) \ 45 i(entity, MUTATOR_ARGV_0_entity) \ 46 i(entity, MUTATOR_ARGV_1_entity) \ 51 #define EV_PlayerWeaponSelect(i, o) \ 52 i(entity, MUTATOR_ARGV_0_entity) \ 57 #define EV_reset_map_global(i, o) \ 62 #define EV_reset_map_players(i, o) \ 67 #define EV_ForbidPlayerScore_Clear(i, o) \ 72 #define EV_ClientDisconnect(i, o) \ 73 i(entity, MUTATOR_ARGV_0_entity) \ 78 #define EV_PlayerDies(i, o) \ 79 i(entity, MUTATOR_ARGV_0_entity) \ 80 i(entity, MUTATOR_ARGV_1_entity) \ 81 i(entity, MUTATOR_ARGV_2_entity) \ 82 i(float, MUTATOR_ARGV_3_float) \ 83 i(float, MUTATOR_ARGV_4_float) \ 84 o(float, MUTATOR_ARGV_4_float) \ 89 #define EV_PlayerDied(i, o) \ 90 i(entity, MUTATOR_ARGV_0_entity) \ 95 #define EV_ClientObituary(i, o) \ 96 i(entity, MUTATOR_ARGV_0_entity) \ 97 i(entity, MUTATOR_ARGV_1_entity) \ 98 i(entity, MUTATOR_ARGV_2_entity) \ 99 i(float, MUTATOR_ARGV_3_float) \ 100 i(entity, MUTATOR_ARGV_4_entity) \ 101 o(bool, MUTATOR_ARGV_5_bool) \ 106 #define EV_FragCenterMessage(i, o) \ 107 i(entity, MUTATOR_ARGV_0_entity) \ 108 i(entity, MUTATOR_ARGV_1_entity) \ 109 i(float, MUTATOR_ARGV_2_float) \ 110 i(int, MUTATOR_ARGV_3_int) \ 111 i(int, MUTATOR_ARGV_4_int) \ 116 #define EV_PlayHitsound(i, o) \ 117 i(entity, MUTATOR_ARGV_0_entity) \ 118 i(entity, MUTATOR_ARGV_1_entity) \ 123 #define EV_ItemModel(i, o) \ 124 i(string, MUTATOR_ARGV_0_string) \ 125 i(string, MUTATOR_ARGV_1_string) \ 126 o(string, MUTATOR_ARGV_1_string) \ 131 #define EV_ItemSound(i, o) \ 132 i(string, MUTATOR_ARGV_0_string) \ 133 i(string, MUTATOR_ARGV_1_string) \ 134 o(string, MUTATOR_ARGV_1_string) \ 139 #define EV_GiveFragsForKill(i, o) \ 140 i(entity, MUTATOR_ARGV_0_entity) \ 141 i(entity, MUTATOR_ARGV_1_entity) \ 142 i(float, MUTATOR_ARGV_2_float) \ 143 o(float, MUTATOR_ARGV_2_float) \ 144 i(float, MUTATOR_ARGV_3_float) \ 145 i(entity, MUTATOR_ARGV_4_entity) \ 156 #define EV_TeamBalance_CheckAllowedTeams(i, o) \ 157 i(float, MUTATOR_ARGV_0_float) \ 158 o(float, MUTATOR_ARGV_0_float) \ 159 i(string, MUTATOR_ARGV_1_string) \ 160 o(string, MUTATOR_ARGV_1_string) \ 161 i(entity, MUTATOR_ARGV_2_entity) \ 170 #define EV_TeamBalance_GetTeamCount(i, o) \ 171 i(float, MUTATOR_ARGV_0_float) \ 172 i(entity, MUTATOR_ARGV_1_entity) \ 173 o(float, MUTATOR_ARGV_2_float) \ 174 o(float, MUTATOR_ARGV_3_float) \ 181 #define EV_TeamBalance_FindBestTeams(i, o) \ 182 i(entity, MUTATOR_ARGV_0_entity) \ 183 o(float, MUTATOR_ARGV_1_float) \ 189 #define EV_TeamBalance_GetPlayerForTeamSwitch(i, o) \ 190 i(int, MUTATOR_ARGV_0_int) \ 191 i(int, MUTATOR_ARGV_1_int) \ 192 i(bool, MUTATOR_ARGV_2_bool) \ 193 o(entity, MUTATOR_ARGV_3_entity) \ 199 #define EV_SpectateCopy(i, o) \ 200 i(entity, MUTATOR_ARGV_0_entity) \ 201 i(entity, MUTATOR_ARGV_1_entity) \ 206 #define EV_FormatMessage(i, o) \ 207 i(entity, MUTATOR_ARGV_0_entity) \ 208 i(string, MUTATOR_ARGV_1_string) \ 209 i(string, MUTATOR_ARGV_2_string) \ 210 o(string, MUTATOR_ARGV_2_string) \ 211 i(string, MUTATOR_ARGV_3_string) \ 216 #define EV_PreFormatMessage(i, o) \ 217 i(entity, MUTATOR_ARGV_0_entity) \ 218 i(string, MUTATOR_ARGV_1_string) \ 219 o(string, MUTATOR_ARGV_1_string) \ 224 #define EV_ForbidThrowCurrentWeapon(i, o) \ 225 i(entity, MUTATOR_ARGV_0_entity) \ 226 i(entity, MUTATOR_ARGV_1_entity) \ 231 #define EV_ForbidDropCurrentWeapon(i, o) \ 232 i(entity, MUTATOR_ARGV_0_entity) \ 233 i(int, MUTATOR_ARGV_1_int) \ 241 #define EV_WeaponRateFactor(i, o) \ 242 i(float, MUTATOR_ARGV_0_float) \ 243 o(float, MUTATOR_ARGV_0_float) \ 244 i(entity, MUTATOR_ARGV_1_entity) \ 249 #define EV_WeaponSpeedFactor(i, o) \ 250 i(float, MUTATOR_ARGV_0_float) \ 251 o(float, MUTATOR_ARGV_0_float) \ 252 i(entity, MUTATOR_ARGV_1_entity) \ 260 #define EV_CustomizeWaypoint(i, o) \ 261 i(entity, MUTATOR_ARGV_0_entity) \ 262 i(entity, MUTATOR_ARGV_1_entity) \ 269 #define EV_FilterItemDefinition(i, o) \ 270 i(entity, MUTATOR_ARGV_0_entity) \ 278 #define EV_FilterItem(i, o) \ 279 i(entity, MUTATOR_ARGV_0_entity) \ 284 #define EV_TurretSpawn(i, o) \ 285 i(entity, MUTATOR_ARGV_0_entity) \ 290 #define EV_TurretFire(i, o) \ 291 i(entity, MUTATOR_ARGV_0_entity) \ 296 #define EV_Turret_CheckFire(i, o) \ 297 i(entity, MUTATOR_ARGV_0_entity) \ 298 o(bool, MUTATOR_ARGV_1_bool) \ 303 #define EV_OnEntityPreSpawn(i, o) \ 304 i(entity, MUTATOR_ARGV_0_entity) \ 309 #define EV_PlayerPreThink(i, o) \ 310 i(entity, MUTATOR_ARGV_0_entity) \ 315 #define EV_GetPressedKeys(i, o) \ 316 i(entity, MUTATOR_ARGV_0_entity) \ 331 #define EV_GetCvars(i, o) \ 332 i(float, get_cvars_f) \ 333 i(string, get_cvars_s) \ 340 #define EV_EditProjectile(i, o) \ 341 i(entity, MUTATOR_ARGV_0_entity) \ 342 i(entity, MUTATOR_ARGV_1_entity) \ 347 #define EV_MonsterSpawn(i, o) \ 348 i(entity, MUTATOR_ARGV_0_entity) \ 353 #define EV_MonsterDies(i, o) \ 354 i(entity, MUTATOR_ARGV_0_entity) \ 355 i(entity, MUTATOR_ARGV_1_entity) \ 356 i(float, MUTATOR_ARGV_2_float) \ 361 #define EV_MonsterRemove(i, o) \ 362 i(entity, MUTATOR_ARGV_0_entity) \ 367 #define EV_MonsterRespawn(i, o) \ 368 i(entity, MUTATOR_ARGV_0_entity) \ 373 #define EV_MonsterDropItem(i, o) \ 374 i(entity, MUTATOR_ARGV_0_entity) \ 375 i(entity, MUTATOR_ARGV_1_entity) \ 376 o(entity, MUTATOR_ARGV_1_entity) \ 377 i(entity, MUTATOR_ARGV_2_entity) \ 386 #define EV_MonsterMove(i, o) \ 387 i(entity, MUTATOR_ARGV_0_entity) \ 388 i(float, MUTATOR_ARGV_1_float) \ 389 o(float, MUTATOR_ARGV_1_float) \ 390 i(float, MUTATOR_ARGV_2_float) \ 391 o(float, MUTATOR_ARGV_2_float) \ 392 i(entity, MUTATOR_ARGV_3_entity) \ 393 o(entity, MUTATOR_ARGV_3_entity) \ 403 #define EV_MonsterValidTarget(i, o) \ 404 i(entity, MUTATOR_ARGV_0_entity) \ 405 i(entity, MUTATOR_ARGV_1_entity) \ 410 #define EV_MonsterCheckBossFlag(i, o) \ 411 i(entity, MUTATOR_ARGV_0_entity) \ 420 #define EV_AllowMobSpawning(i, o) \ 421 i(entity, MUTATOR_ARGV_0_entity) \ 422 o(string, MUTATOR_ARGV_1_string) \ 427 #define EV_PlayerDamage_SplitHealthArmor(i, o) \ 428 i(entity, MUTATOR_ARGV_0_entity) \ 429 i(entity, MUTATOR_ARGV_1_entity) \ 430 i(entity, MUTATOR_ARGV_2_entity) \ 431 i(vector, MUTATOR_ARGV_3_vector) \ 432 i(float, MUTATOR_ARGV_4_float) \ 433 o(float, MUTATOR_ARGV_4_float) \ 434 i(float, MUTATOR_ARGV_5_float) \ 435 o(float, MUTATOR_ARGV_5_float) \ 436 i(float, MUTATOR_ARGV_6_float) \ 437 i(float, MUTATOR_ARGV_7_float) \ 445 #define EV_Damage_Calculate(i, o) \ 446 i(entity, MUTATOR_ARGV_0_entity) \ 447 i(entity, MUTATOR_ARGV_1_entity) \ 448 i(entity, MUTATOR_ARGV_2_entity) \ 449 i(float, MUTATOR_ARGV_3_float) \ 450 i(float, MUTATOR_ARGV_4_float) \ 451 o(float, MUTATOR_ARGV_4_float) \ 452 i(float, MUTATOR_ARGV_5_float) \ 453 o(float, MUTATOR_ARGV_5_float) \ 454 i(vector, MUTATOR_ARGV_6_vector) \ 455 o(vector, MUTATOR_ARGV_6_vector) \ 456 i(entity, MUTATOR_ARGV_7_entity) \ 464 #define EV_PlayerDamaged(i, o) \ 465 i(entity, MUTATOR_ARGV_0_entity) \ 466 i(entity, MUTATOR_ARGV_1_entity) \ 467 i(float, MUTATOR_ARGV_2_float) \ 468 i(float, MUTATOR_ARGV_3_float) \ 469 i(vector, MUTATOR_ARGV_4_vector) \ 470 i(int, MUTATOR_ARGV_5_int) \ 471 i(float, MUTATOR_ARGV_6_float) \ 478 #define EV_W_DecreaseAmmo(i, o) \ 479 i(entity, MUTATOR_ARGV_0_entity) \ 480 i(entity, MUTATOR_ARGV_1_entity) \ 481 i(float, MUTATOR_ARGV_2_float) \ 482 o(float, MUTATOR_ARGV_2_float) \ 489 #define EV_W_Reload(i, o) \ 490 i(entity, MUTATOR_ARGV_0_entity) \ 495 #define EV_PlayerPowerups(i, o) \ 496 i(entity, MUTATOR_ARGV_0_entity) \ 497 i(int, MUTATOR_ARGV_1_int) \ 505 #define EV_PlayerRegen(i, o) \ 506 i(entity, MUTATOR_ARGV_0_entity) \ 507 i(float, MUTATOR_ARGV_1_float) \ 508 o(float, MUTATOR_ARGV_1_float) \ 509 i(float, MUTATOR_ARGV_2_float) \ 510 o(float, MUTATOR_ARGV_2_float) \ 511 i(float, MUTATOR_ARGV_3_float) \ 512 o(float, MUTATOR_ARGV_3_float) \ 513 i(float, MUTATOR_ARGV_4_float) \ 514 o(float, MUTATOR_ARGV_4_float) \ 515 i(float, MUTATOR_ARGV_5_float) \ 516 o(float, MUTATOR_ARGV_5_float) \ 517 i(float, MUTATOR_ARGV_6_float) \ 518 o(float, MUTATOR_ARGV_6_float) \ 519 i(float, MUTATOR_ARGV_7_float) \ 520 o(float, MUTATOR_ARGV_7_float) \ 521 i(float, MUTATOR_ARGV_8_float) \ 522 o(float, MUTATOR_ARGV_8_float) \ 523 i(float, MUTATOR_ARGV_9_float) \ 524 o(float, MUTATOR_ARGV_9_float) \ 525 i(float, MUTATOR_ARGV_10_float) \ 526 o(float, MUTATOR_ARGV_10_float) \ 535 #define EV_PlayerUseKey(i, o) \ 536 i(entity, MUTATOR_ARGV_0_entity) \ 563 #define EV_SV_ParseClientCommand(i, o) \ 564 i(entity, MUTATOR_ARGV_0_entity) \ 565 i(string, MUTATOR_ARGV_1_string) \ 566 i(int, MUTATOR_ARGV_2_int) \ 567 i(string, MUTATOR_ARGV_3_string) \ 572 #define EV_SV_ParseServerCommand(i, o) \ 573 i(string, MUTATOR_ARGV_0_string) \ 574 i(int, MUTATOR_ARGV_1_int) \ 575 i(string, MUTATOR_ARGV_2_string) \ 583 #define EV_Spawn_Score(i, o) \ 584 i(entity, MUTATOR_ARGV_0_entity) \ 585 i(entity, MUTATOR_ARGV_1_entity) \ 586 i(vector, MUTATOR_ARGV_2_vector) \ 587 o(vector, MUTATOR_ARGV_2_vector) \ 594 #define EV_SetModname(i, o) \ 596 i(string, MUTATOR_ARGV_0_string) \ 597 o(string, MUTATOR_ARGV_0_string) \ 605 #define EV_Item_Spawn(i, o) \ 606 i(entity, MUTATOR_ARGV_0_entity) \ 610 #define EV_SetWeaponreplace(i, o) \ 611 i(entity, MUTATOR_ARGV_0_entity) \ 612 i(entity, MUTATOR_ARGV_1_entity) \ 613 i(string, MUTATOR_ARGV_2_string) \ 614 o(string, MUTATOR_ARGV_2_string) \ 619 #define EV_Item_RespawnCountdown(i, o) \ 620 i(entity, MUTATOR_ARGV_0_entity) \ 625 #define EV_BotShouldAttack(i, o) \ 626 i(entity, MUTATOR_ARGV_0_entity) \ 627 i(entity, MUTATOR_ARGV_1_entity) \ 635 #define EV_PortalTeleport(i, o) \ 636 i(entity, MUTATOR_ARGV_0_entity) \ 646 #define EV_HelpMePing(i, o) \ 647 i(entity, MUTATOR_ARGV_0_entity) \ 655 #define EV_VehicleInit(i, o) \ 656 i(entity, MUTATOR_ARGV_0_entity) \ 664 #define EV_VehicleEnter(i, o) \ 665 i(entity, MUTATOR_ARGV_0_entity) \ 666 i(entity, MUTATOR_ARGV_1_entity) \ 674 #define EV_VehicleTouch(i, o) \ 675 i(entity, MUTATOR_ARGV_0_entity) \ 676 i(entity, MUTATOR_ARGV_1_entity) \ 684 #define EV_VehicleExit(i, o) \ 685 i(entity, MUTATOR_ARGV_0_entity) \ 686 i(entity, MUTATOR_ARGV_1_entity) \ 691 #define EV_AbortSpeedrun(i, o) \ 692 i(entity, MUTATOR_ARGV_0_entity) \ 697 #define EV_ItemTouch(i, o) \ 698 i(entity, MUTATOR_ARGV_0_entity) \ 699 i(entity, MUTATOR_ARGV_1_entity) \ 700 o(entity, MUTATOR_ARGV_1_entity) \ 711 #define EV_ItemTouched(i, o) \ 712 i(entity, MUTATOR_ARGV_0_entity) \ 713 i(entity, MUTATOR_ARGV_1_entity) \ 719 #define EV_GetResourceLimit(i, o) \ 720 i(entity, MUTATOR_ARGV_0_entity) \ 721 i(entity, MUTATOR_ARGV_1_entity) \ 722 i(float, MUTATOR_ARGV_2_float) \ 723 o(float, MUTATOR_ARGV_2_float) \ 729 #define EV_SetResource(i, o) \ 730 i(entity, MUTATOR_ARGV_0_entity) \ 731 i(entity, MUTATOR_ARGV_1_entity) \ 732 o(entity, MUTATOR_ARGV_1_entity) \ 733 i(float, MUTATOR_ARGV_2_float) \ 734 o(float, MUTATOR_ARGV_2_float) \ 741 #define EV_ResourceAmountChanged(i, o) \ 742 i(entity, MUTATOR_ARGV_0_entity) \ 743 i(entity, MUTATOR_ARGV_1_entity) \ 744 i(float, MUTATOR_ARGV_2_float) \ 751 #define EV_ResourceWasted(i, o) \ 752 i(entity, MUTATOR_ARGV_0_entity) \ 753 i(entity, MUTATOR_ARGV_1_entity) \ 754 i(float, MUTATOR_ARGV_2_float) \ 761 #define EV_GiveResource(i, o) \ 762 i(entity, MUTATOR_ARGV_0_entity) \ 763 i(entity, MUTATOR_ARGV_1_entity) \ 764 o(entity, MUTATOR_ARGV_1_entity) \ 765 i(float, MUTATOR_ARGV_2_float) \ 766 o(float, MUTATOR_ARGV_2_float) \ 772 #define EV_GiveResourceWithLimit(i, o) \ 773 i(entity, MUTATOR_ARGV_0_entity) \ 774 i(entity, MUTATOR_ARGV_1_entity) \ 775 o(entity, MUTATOR_ARGV_1_entity) \ 776 i(float, MUTATOR_ARGV_2_float) \ 777 o(float, MUTATOR_ARGV_2_float) \ 778 i(float, MUTATOR_ARGV_3_float) \ 779 o(float, MUTATOR_ARGV_3_float) \ 786 #define EV_TakeResource(i, o) \ 787 i(entity, MUTATOR_ARGV_0_entity) \ 788 i(entity, MUTATOR_ARGV_1_entity) \ 789 o(entity, MUTATOR_ARGV_1_entity) \ 790 i(float, MUTATOR_ARGV_2_float) \ 791 o(float, MUTATOR_ARGV_2_float) \ 797 #define EV_TakeResourceWithLimit(i, o) \ 798 i(entity, MUTATOR_ARGV_0_entity) \ 799 i(entity, MUTATOR_ARGV_1_entity) \ 800 o(entity, MUTATOR_ARGV_1_entity) \ 801 i(float, MUTATOR_ARGV_2_float) \ 802 o(float, MUTATOR_ARGV_2_float) \ 803 i(float, MUTATOR_ARGV_3_float) \ 804 o(float, MUTATOR_ARGV_3_float) \ 809 #define EV_ClientConnect(i, o) \ 810 i(entity, MUTATOR_ARGV_0_entity) \ 814 #define EV_HavocBot_ChooseRole(i, o) \ 815 i(entity, MUTATOR_ARGV_0_entity) \ 820 #define EV_AccuracyTargetValid(i, o) \ 821 i(entity, MUTATOR_ARGV_0_entity) \ 822 i(entity, MUTATOR_ARGV_1_entity) \ 835 #define EV_GetModelParams(i, o) \ 836 i(string, MUTATOR_ARGV_0_string) \ 837 i(string, MUTATOR_ARGV_1_string) \ 842 #define EV_FireBullet_Hit(i, o) \ 843 i(entity, MUTATOR_ARGV_0_entity) \ 844 i(entity, MUTATOR_ARGV_1_entity) \ 845 i(vector, MUTATOR_ARGV_2_vector) \ 846 i(vector, MUTATOR_ARGV_3_vector) \ 847 i(float, MUTATOR_ARGV_4_float) \ 848 o(float, MUTATOR_ARGV_4_float) \ 849 i(entity, MUTATOR_ARGV_5_entity) \ 853 #define EV_FixPlayermodel(i, o) \ 854 i(string, MUTATOR_ARGV_0_string) \ 855 o(string, MUTATOR_ARGV_0_string) \ 856 i(int, MUTATOR_ARGV_1_int) \ 857 o(int, MUTATOR_ARGV_1_int) \ 858 i(entity, MUTATOR_ARGV_2_entity) \ 865 #define EV_GrappleHookThink(i, o) \ 866 i(entity, MUTATOR_ARGV_0_entity) \ 867 i(int, MUTATOR_ARGV_1_int) \ 868 o(int, MUTATOR_ARGV_1_int) \ 869 i(entity, MUTATOR_ARGV_2_entity) \ 870 o(entity, MUTATOR_ARGV_2_entity) \ 871 i(float, MUTATOR_ARGV_3_float) \ 872 o(float, MUTATOR_ARGV_3_float) \ 876 #define EV_BuffModel_Customize(i, o) \ 877 i(entity, MUTATOR_ARGV_0_entity) \ 878 i(entity, MUTATOR_ARGV_1_entity) \ 883 #define EV_BuffTouch(i, o) \ 884 i(entity, MUTATOR_ARGV_0_entity) \ 885 i(entity, MUTATOR_ARGV_1_entity) \ 886 o(entity, MUTATOR_ARGV_1_entity) \ 896 #define EV_GetRecords(i, o) \ 897 i(int, MUTATOR_ARGV_0_int) \ 898 i(string, MUTATOR_ARGV_1_string) \ 899 o(string, MUTATOR_ARGV_1_string) \ 903 #define EV_Race_FinalCheckpoint(i, o) \ 904 i(entity, MUTATOR_ARGV_0_entity) \ 909 #define EV_ClientKill(i, o) \ 910 i(entity, MUTATOR_ARGV_0_entity) \ 911 i(float, MUTATOR_ARGV_1_float) \ 912 o(float, MUTATOR_ARGV_1_float) \ 917 #define EV_ClientKill_Now(i, o) \ 918 i(entity, MUTATOR_ARGV_0_entity) \ 922 #define EV_FixClientCvars(i, o) \ 923 i(entity, MUTATOR_ARGV_0_entity) \ 927 #define EV_SpectateSet(i, o) \ 928 i(entity, MUTATOR_ARGV_0_entity) \ 929 i(entity, MUTATOR_ARGV_1_entity) \ 930 o(entity, MUTATOR_ARGV_1_entity) \ 934 #define EV_SpectateNext(i, o) \ 935 i(entity, MUTATOR_ARGV_0_entity) \ 936 i(entity, MUTATOR_ARGV_1_entity) \ 937 o(entity, MUTATOR_ARGV_1_entity) \ 941 #define EV_SpectatePrev(i, o) \ 942 i(entity, MUTATOR_ARGV_0_entity) \ 943 i(entity, MUTATOR_ARGV_1_entity) \ 944 o(entity, MUTATOR_ARGV_1_entity) \ 945 i(entity, MUTATOR_ARGV_2_entity) \ 956 #define EV_Bot_FixCount(i, o) \ 957 i(int, MUTATOR_ARGV_0_int) \ 958 o(int, MUTATOR_ARGV_0_int) \ 959 i(int, MUTATOR_ARGV_1_int) \ 960 o(int, MUTATOR_ARGV_1_int) \ 964 #define EV_ClientCommand_Spectate(i, o) \ 965 i(entity, MUTATOR_ARGV_0_entity) \ 975 #define EV_CheckRules_World(i, o) \ 976 i(float, MUTATOR_ARGV_0_float) \ 977 o(float, MUTATOR_ARGV_0_float) \ 978 i(float, MUTATOR_ARGV_1_float) \ 979 i(float, MUTATOR_ARGV_2_float) \ 983 #define EV_WantWeapon(i, o) \ 984 i(entity, MUTATOR_ARGV_0_entity) \ 985 i(float, MUTATOR_ARGV_1_float) \ 986 o(float, MUTATOR_ARGV_1_float) \ 987 i(bool, MUTATOR_ARGV_2_bool) \ 988 o(bool, MUTATOR_ARGV_2_bool) \ 989 i(bool, MUTATOR_ARGV_3_bool) \ 990 o(bool, MUTATOR_ARGV_3_bool) \ 994 #define EV_AddPlayerScore(i, o) \ 995 i(entity, MUTATOR_ARGV_0_entity) \ 996 i(float, MUTATOR_ARGV_1_float) \ 997 o(float, MUTATOR_ARGV_1_float) \ 998 i(entity, MUTATOR_ARGV_2_entity) \ 1002 #define EV_AddedPlayerScore(i, o) \ 1003 i(entity, MUTATOR_ARGV_0_entity) \ 1004 i(float, MUTATOR_ARGV_1_float) \ 1005 i(entity, MUTATOR_ARGV_2_entity) \ 1009 #define EV_GetPlayerStatus(i, o) \ 1010 i(entity, MUTATOR_ARGV_0_entity) \ 1014 #define EV_SetWeaponArena(i, o) \ 1015 i(string, MUTATOR_ARGV_0_string) \ 1016 o(string, MUTATOR_ARGV_0_string) \ 1020 #define EV_DropSpecialItems(i, o) \ 1021 i(entity, MUTATOR_ARGV_0_entity) \ 1029 #define EV_AllowMobButcher(i, o) \ 1030 o(string, MUTATOR_ARGV_0_string) \ 1036 #define EV_SendWaypoint(i, o) \ 1037 i(entity, MUTATOR_ARGV_0_entity) \ 1038 i(entity, MUTATOR_ARGV_1_entity) \ 1039 i(int, MUTATOR_ARGV_2_int) \ 1040 o(int, MUTATOR_ARGV_2_int) \ 1041 i(int, MUTATOR_ARGV_3_int) \ 1042 o(int, MUTATOR_ARGV_3_int) \ 1046 #define EV_TurretValidateTarget(i, o) \ 1047 i(entity, MUTATOR_ARGV_0_entity) \ 1048 i(entity, MUTATOR_ARGV_1_entity) \ 1049 i(int, MUTATOR_ARGV_2_int) \ 1050 o(float, MUTATOR_ARGV_3_float) \ 1054 #define EV_TurretThink(i, o) \ 1055 i(entity, MUTATOR_ARGV_0_entity) \ 1062 #define EV_PrepareExplosionByDamage(i, o) \ 1063 i(entity, MUTATOR_ARGV_0_entity) \ 1064 i(entity, MUTATOR_ARGV_1_entity) \ 1069 #define EV_MonsterModel(i, o) \ 1070 i(string, MUTATOR_ARGV_0_string) \ 1071 i(string, MUTATOR_ARGV_1_string) \ 1072 o(string, MUTATOR_ARGV_1_string) \ 1079 #define EV_Player_ChangeTeam(i, o) \ 1080 i(entity, MUTATOR_ARGV_0_entity) \ 1081 i(float, MUTATOR_ARGV_1_float) \ 1082 i(float, MUTATOR_ARGV_2_float) \ 1089 #define EV_Player_ChangedTeam(i, o) \ 1090 i(entity, MUTATOR_ARGV_0_entity) \ 1091 i(float, MUTATOR_ARGV_1_float) \ 1092 i(float, MUTATOR_ARGV_2_float) \ 1099 #define EV_Player_ChangeTeamKill(i, o) \ 1100 i(entity, MUTATOR_ARGV_0_entity) \ 1105 #define EV_URI_GetCallback(i, o) \ 1106 i(float, MUTATOR_ARGV_0_float) \ 1107 i(float, MUTATOR_ARGV_1_float) \ 1108 i(string, MUTATOR_ARGV_2_string) \ 1115 #define EV_LockWeapon(i, o) \ 1116 i(entity, MUTATOR_ARGV_0_entity) \ 1123 #define EV_ForbidWeaponUse(i, o) \ 1124 i(entity, MUTATOR_ARGV_0_entity) \ 1129 #define EV_CopyBody(i, o) \ 1130 i(entity, MUTATOR_ARGV_0_entity) \ 1131 i(entity, MUTATOR_ARGV_1_entity) \ 1132 i(bool, MUTATOR_ARGV_2_bool) \ 1137 #define EV_ChatMessage(i, o) \ 1138 i(entity, MUTATOR_ARGV_0_entity) \ 1139 i(int, MUTATOR_ARGV_1_int) \ 1140 o(int, MUTATOR_ARGV_1_int) \ 1145 #define EV_ChatMessageTo(i, o) \ 1146 i(entity, MUTATOR_ARGV_0_entity) \ 1147 i(entity, MUTATOR_ARGV_1_entity) \ 1155 #define EV_FusionReactor_ValidTarget(i, o) \ 1156 i(entity, MUTATOR_ARGV_0_entity) \ 1157 i(entity, MUTATOR_ARGV_1_entity) \ 1168 #define EV_HideTeamNagger(i, o) \ 1169 i(entity, MUTATOR_ARGV_0_entity) \ 1174 #define EV_Item_ScheduleRespawn(i, o) \ 1175 i(entity, MUTATOR_ARGV_0_entity) \ 1176 i(float, MUTATOR_ARGV_1_float) \ 1181 #define EV_PlayerPhysics_UpdateStats(i, o) \ 1182 i(entity, MUTATOR_ARGV_0_entity) \ 1187 #define EV_PlayerPhysics_PostUpdateStats(i, o) \ 1188 i(entity, MUTATOR_ARGV_0_entity) \ 1189 i(float, MUTATOR_ARGV_1_float) \ 1194 #define EV_HavocBot_Aim(i, o) \ 1195 i(entity, MUTATOR_ARGV_0_entity) \ 1200 #define EV_CalculateRespawnTime(i, o) \ 1201 i(entity, MUTATOR_ARGV_0_entity) \ 1206 #define EV_VoteCommand_Parse(i, o) \ 1207 i(entity, MUTATOR_ARGV_0_entity) \ 1208 i(string, MUTATOR_ARGV_1_string) \ 1209 i(string, MUTATOR_ARGV_2_string) \ 1210 i(float, MUTATOR_ARGV_3_float) \ 1211 i(float, MUTATOR_ARGV_4_float) \ 1225 #define EV_Freeze(i, o) \ 1226 i(entity, MUTATOR_ARGV_0_entity) \ 1227 i(float, MUTATOR_ARGV_1_float) \ 1228 i(int, MUTATOR_ARGV_2_int) \ 1235 #define EV_Unfreeze(i, o) \ 1236 i(entity, MUTATOR_ARGV_0_entity) \ 1243 #define EV_GetPlayerLimit(i, o) \ 1244 i(int, MUTATOR_ARGV_0_int) \ 1245 o(int, MUTATOR_ARGV_0_int) \ 1250 #define EV_LogDeath_AppendItemCodes(i, o) \ 1251 i(entity, MUTATOR_ARGV_0_entity) \ 1252 i(string, MUTATOR_ARGV_1_string) \ 1253 o(string, MUTATOR_ARGV_1_string) \ 1258 #define EV_AllowRocketJumping(i, o) \ 1259 i(bool, MUTATOR_ARGV_0_bool) \ 1260 o(bool, MUTATOR_ARGV_0_bool) \ 1265 #define EV_W_PlayStrengthSound(i, o) \ 1266 i(entity, MUTATOR_ARGV_0_entity) \ #define EV_SpectateSet(i, o)
#define EV_ChatMessageTo(i, o)
return true to prevent sending a chat (private, team or regular) message from reaching a certain play...
#define EV_LogDeath_AppendItemCodes(i, o)
include special item codes for a death to the game log
#define EV_MonsterDies(i, o)
called when a monster dies
#define EV_FixClientCvars(i, o)
#define EV_PlayerPhysics_UpdateStats(i, o)
called before physics stats are set on a player, allows limited early customization ...
#define EV_WantWeapon(i, o)
#define EV_ForbidRandomStartWeapons(i, o)
called when player spawns to determine whether to give them random start weapons. ...
void SpectateCopy(entity this, entity spectatee)
#define EV_FilterItem(i, o)
checks if the current item may be spawned (.items may be read and written to, as well as the ammo_ fi...
#define EV_OnEntityPreSpawn(i, o)
return error to prevent entity spawn, or modify the entity
#define EV_GetModelParams(i, o)
Called when getting the global parameters for a model.
#define EV_TurretSpawn(i, o)
return error to request removal
#define EV_HavocBot_Aim(i, o)
return true to use your own aim target (or none at all)
#define EV_SpectateNext(i, o)
#define EV_PlayerSpawn(i, o)
called when a player spawns as player, after shared setup, before his weapon is chosen (so items may ...
#define EV_Bot_FixCount(i, o)
called when player triggered kill (or is changing teams), return error to not do anything ...
vector Spawn_Score(entity this, entity spot, float mindist, float teamcheck, bool targetcheck)
void ClientConnect(entity this)
ClientConnect
#define EV_Damage_Calculate(i, o)
called to adjust damage and force values which are applied to the player, used for e...
#define EV_MonsterSpawn(i, o)
called when a monster spawns
#define EV_Item_Spawn(i, o)
called for each item being spawned on a map, including dropped weapons return 1 to remove an item ...
#define EV_SetResource(i, o)
Called when the amount of resource of an entity changes.
#define EV_W_DecreaseAmmo(i, o)
Called by W_DecreaseAmmo.
#define EV_AccuracyTargetValid(i, o)
called when a target is checked for accuracy
void DecodeLevelParms(entity this)
#define EV_MonsterValidTarget(i, o)
called when validating a monster's target
#define EV_ClientKill(i, o)
called when player triggered kill (or is changing teams), return error to not do anything ...
#define EV_TurretFire(i, o)
return error to not attack
#define EV_FixPlayermodel(i, o)
#define EV_VehicleExit(i, o)
called when a player exits a vehicle allows mutators to set special settings in this event ...
#define EV_Freeze(i, o)
Called when freezing an entity (monster or player), return true to force showing a waypoint...
#define EV_TeamBalance_GetPlayerForTeamSwitch(i, o)
Called during autobalance.
#define EV_EditProjectile(i, o)
can edit any "just fired" projectile
#define EV_ClientCommand_Spectate(i, o)
#define EV_Player_ChangeTeamKill(i, o)
Called when player is about to be killed when changing teams.
#define EV_PlayerRegen(i, o)
called every player think frame return 1 to disable regen
void ClientKill(entity this)
#define EV_PlayerPreThink(i, o)
runs in the event loop for players; is called for ALL player entities, also bots, also the dead...
int TeamBalance_FindBestTeams(entity balance, entity player, bool use_score)
Returns the bitmask of the teams that will make the game most balanced if the player joins any of the...
void SetChangeParms(entity this)
#define EV_BuffTouch(i, o)
called at when a buff is touched.
#define EV_GiveResource(i, o)
Called when entity is being given some resource.
#define EV_FusionReactor_ValidTarget(i, o)
called when a fusion reactor is validating its target
#define EV_PlayerDied(i, o)
called after a player died.
#define EV_FragCenterMessage(i, o)
allows overriding the frag centerprint messages
#define EV_GetResourceLimit(i, o)
Called when the amount of entity resources changes.
void Freeze(entity targ, float revivespeed, int frozen_type, bool show_waypoint)
#define EV_ChatMessage(i, o)
called when sending a chat message, ret argument can be changed to prevent the message ...
#define EV_GetRecords(i, o)
#define EV_Unfreeze(i, o)
Called when an entity (monster or player) is defrosted.
#define EV_Turret_CheckFire(i, o)
return error to not attack
#define EV_SetWeaponArena(i, o)
#define EV_ClientKill_Now(i, o)
called when player is about to be killed during kill command or changing teams
#define EV_GiveResourceWithLimit(i, o)
Called when entity is being given some resource with specified limit.
#define EV_Item_RespawnCountdown(i, o)
called when an item is about to respawn
#define EV_ItemSound(i, o)
called when an item sound is about to be played, allows custom paths etc.
#define EV_TeamBalance_FindBestTeams(i, o)
allows overriding the teams that will make the game most balanced if the player joins any of them...
#define EV_ItemModel(i, o)
called when an item model is about to be set, allows custom paths etc.
#define EV_TeamBalance_GetTeamCount(i, o)
allows overriding of team counts
void ClientKill_Now(entity this)
#define EV_WeaponRateFactor(i, o)
allows changing attack rate
#define EV_ForbidThrowCurrentWeapon(i, o)
returns true if throwing the current weapon shall not be allowed
#define EV_GiveFragsForKill(i, o)
called when someone was fragged by "self", and is expected to change frag_score to adjust scoring for...
#define EV_PreFormatMessage(i, o)
called before any formatting is applied, handy for tweaking the message before scripts get ahold of i...
#define EV_PlayerUseKey(i, o)
called when the use key is pressed if MUTATOR_RETURNVALUE is 1, don't do anything return 1 if the use...
void PlayerPreThink(entity this)
#define EV_SendWaypoint(i, o)
#define EV_PlayerWeaponSelect(i, o)
called after a player's weapon is chosen so it can be overriden here
#define EV_URI_GetCallback(i, o)
#define EV_PrepareExplosionByDamage(i, o)
#define EV_CustomizeWaypoint(i, o)
called every frame.
#define EV_GetPressedKeys(i, o)
TODO change this into a general PlayerPostThink hook?
MUTATOR_HOOKABLE(CSQC_ConsoleCommand, EV_CSQC_ConsoleCommand)
#define EV_ClientObituary(i, o)
called when showing an obituary for the player.
void TakeResource(entity receiver, Resource res_type, float amount)
Takes an entity some resource.
void TakeResourceWithLimit(entity receiver, Resource res_type, float amount, float limit)
Takes an entity some resource but not less than a limit.
#define EV_AllowMobButcher(i, o)
called when an admin tries to kill all monsters return 1 to prevent spawning
#define EV_PlayerDamage_SplitHealthArmor(i, o)
called when a player gets damaged to e.g.
#define EV_HideTeamNagger(i, o)
return true to hide the 'teamnumbers are imbalanced' message
void Unfreeze(entity targ, bool reset_health)
#define EV_MonsterModel(i, o)
called when a monster model is about to be set, allows custom paths etc.
#define EV_AutoJoinOnConnection(i, o)
returns true if client should be put as player on connection
#define EV_SV_ParseClientCommand(i, o)
called when a client command is parsed NOTE: hooks MUST start with if (MUTATOR_RETURNVALUE) return fa...
#define EV_VoteCommand_Parse(i, o)
called when parsing a vote command.
#define EV_VehicleTouch(i, o)
called when a player touches a vehicle return true to stop player from entering the vehicle ...
bool SpectateNext(entity this)
#define EV_MonsterCheckBossFlag(i, o)
called to change a random monster to a miniboss
#define EV_CheckRules_World(i, o)
#define EV_Spawn_Score(i, o)
called when a spawnpoint is being evaluated return 1 to make the spawnpoint unusable ...
void SV_ParseClientCommand(entity this, string command)
#define EV_MonsterMove(i, o)
called when a monster moves returning true makes the monster stop
#define EV_reset_map_players(i, o)
called in reset_map
#define EV_MonsterRemove(i, o)
called when a monster dies
#define EV_VehicleEnter(i, o)
called when a player enters a vehicle allows mutators to set special settings in this event ...
void W_PlayStrengthSound(entity player)
#define EV_CalculateRespawnTime(i, o)
return true to skip respawn time calculations
void GiveResourceWithLimit(entity receiver, Resource res_type, float amount, float limit)
Gives an entity some resource but not more than a limit.
#define EV_SetModname(i, o)
void SetResource(entity e, Resource res_type, float amount)
Sets the current amount of resource the given entity will have.
#define EV_AllowRocketJumping(i, o)
Allows disabling or enabling rocket jumping independently of balance, use the parameter to force a pr...
#define EV_FilterItemDefinition(i, o)
Check if items having the given definition are allowed to spawn.
void GetCvars(entity this, entity store, int f)
void GetPressedKeys(entity this)
#define EV_TakeResourceWithLimit(i, o)
Called when some resource is being taken from an entity, with a limit.
#define EV_FormatMessage(i, o)
called when formatting a chat message to replace fancy functions
void TeamBalance_GetTeamCounts(entity balance, entity ignore)
Counts the number of players and various other information about each team.
#define EV_PlayerPhysics_PostUpdateStats(i, o)
called after physics stats are set on a player, allows post-initialization modifications ...
void PlayerUseKey(entity this)
#define EV_ForbidPlayerScore_Clear(i, o)
returns 1 if clearing player score shall not be allowed
#define EV_Player_ChangeTeam(i, o)
Called before player changes their team.
#define EV_GetPlayerStatus(i, o)
#define EV_SetWeaponreplace(i, o)
#define EV_ClientConnect(i, o)
called at when a player connect
#define EV_ItemTouch(i, o)
called at when a item is touched.
#define EV_FireBullet_Hit(i, o)
called when a bullet has hit a target
#define EV_PlayerPowerups(i, o)
called at the end of player_powerups() in client.qc, used for manipulating the values which are set b...
#define EV_PortalTeleport(i, o)
called whenever a player goes through a portal gun teleport allows you to strip a player of an item i...
#define EV_ForbidDropCurrentWeapon(i, o)
returns true if dropping the current weapon shall not be allowed at any time including death ...
#define EV_HavocBot_ChooseRole(i, o)
#define EV_AddPlayerScore(i, o)
#define EV_ResourceWasted(i, o)
Called when there was an attempt to set entity resources higher than their limit. ...
float GetResourceLimit(entity e, Resource res_type)
Returns the maximum amount of the given resource.
#define EV_HelpMePing(i, o)
called whenever a player uses impulse 33 (help me) in impulse.qc normally help me ping uses ...
#define EV_PlayerDamaged(i, o)
Called when a player is damaged Returns true if damage shouldn't be logged.
void GiveResource(entity receiver, Resource res_type, float amount)
Gives an entity some resource.
#define EV_MonsterRespawn(i, o)
called when a monster wants to respawn
#define EV_PutClientInServer(i, o)
#define EV_ForbidWeaponUse(i, o)
return true to prevent weapon use for a player
#define EV_AllowMobSpawning(i, o)
called when a player tries to spawn a monster return 1 to prevent spawning NOTE: requires reason if d...
#define EV_TeamBalance_CheckAllowedTeams(i, o)
Allows adjusting allowed teams.
#define EV_BuffModel_Customize(i, o)
#define EV_GetPlayerLimit(i, o)
Called when a player is trying to join, argument is the number of players allowed to join the match...
#define EV_ForbidSpawn(i, o)
return true to prevent a spectator/observer to spawn as player
void Item_RespawnCountdown(entity this)
#define EV_TakeResource(i, o)
Called when some resource is being taken from an entity.
#define EV_MonsterDropItem(i, o)
called when a monster is dropping loot
#define EV_CopyBody(i, o)
called when creating a clone of the player (usually for corpses that stay after the player has re-spa...
#define EV_MakePlayerObserver(i, o)
called when a player becomes observer, after shared setup
#define EV_ClientDisconnect(i, o)
called when a player disconnects
#define EV_AbortSpeedrun(i, o)
called when a speedrun is aborted and the player is teleported back to start position ...
#define EV_SpectateCopy(i, o)
copies variables for spectating "spectatee" to "this"
void FixPlayermodel(entity player)
#define EV_TurretValidateTarget(i, o)
#define EV_VehicleInit(i, o)
called when a vehicle initializes return true to remove the vehicle
#define EV_W_PlayStrengthSound(i, o)
Called when weapons are performing their attack, useful for applying bonus attack sounds...
#define EV_TurretThink(i, o)
void W_DecreaseAmmo(Weapon wep, entity actor, float ammo_use,.entity weaponentity)
entity TeamBalance_CheckAllowedTeams(entity for_whom)
Checks whether the player can join teams according to global configuration and mutator settings...
bool SpectateSet(entity this)
void CopyBody(entity this, float keepvelocity)
#define EV_reset_map_global(i, o)
called in reset_map
#define EV_PlayHitsound(i, o)
called when a player dies to e.g.
#define EV_Race_FinalCheckpoint(i, o)
#define EV_Player_ChangedTeam(i, o)
Called after player has changed their team.
#define EV_DropSpecialItems(i, o)
#define EV_WeaponSpeedFactor(i, o)
allows changing weapon speed (projectiles mostly)
#define EV_BotShouldAttack(i, o)
called when a bot checks a target to attack
void Item_ScheduleRespawn(entity e)
#define EV_SV_ParseServerCommand(i, o)
please read EV_SV_ParseClientCommand description before using
#define EV_Item_ScheduleRespawn(i, o)
return true to show a waypoint while the item is spawning
entity TeamBalance_GetPlayerForTeamSwitch(int source_team_index, int destination_team_index, bool is_bot)
Returns the player who is the most suitable for switching between the given teams.
#define EV_ResourceAmountChanged(i, o)
Called after the amount of resource of an entity has changed.
void FixClientCvars(entity e)
#define EV_SpectatePrev(i, o)
#define EV_GrappleHookThink(i, o)
bool SpectatePrev(entity this)
#define EV_W_Reload(i, o)
Called by W_Reload.
#define EV_PlayerDies(i, o)
called when a player dies to e.g.
#define EV_ItemTouched(i, o)
called after the item has been touched.
#define EV_LockWeapon(i, o)
return true to lock weapon (can't be used nor changed) for a player
void W_Reload(entity actor,.entity weaponentity, float sent_ammo_min, Sound sent_sound)