Advertisement
BigETI

nbcs.inc

Sep 27th, 2011
299
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 28.15 KB | None | 0 0
  1. /*
  2. ////////////////////////////////////////////////////////////
  3. //========================================================//
  4. //== New Player Callbacks include made by BigETI © 2011 ==//
  5. //========================================================//
  6. //== You are not allowed to edit this include ============//
  7. //== and/or release it without my permissions! ===========//
  8. //========================================================//
  9. //== File name: ncbs.inc =================================//
  10. //== Autor: Ethem Kurt © =================================//
  11. //== Release Date: 27.09.2011 ============================//
  12. //== Version: V1.4 =======================================//
  13. //== Lines: 701 ==========================================//
  14. //== File size: 28,1 KB ==================================//
  15. //========================================================//
  16. ////////////////////////////////////////////////////////////
  17.  
  18. ||=====================================================================================================================================================||
  19. ||  IMPORTANT: Define FILTERSCRIPT on top of your script to verify if you are yousing a filterscript or a gamemode!                                    ||
  20. ||  If you want to call the callbacks at another scripts, so you have to use ncbs_forwards.inc at another scripts to make the callbacks usable there.  ||
  21. ||=====================================================================================================================================================||
  22. */
  23.  
  24. //Do not edit those things below!
  25. #include <a_samp>
  26.  
  27. #if defined _BIGETI_NEW_PLAYER_CALLBACKS
  28.     #endinput
  29. #endif
  30. #define _BIGETI_NEW_PLAYER_CALLBACKS
  31. #if defined _BIGETI_NPCBS_FORWARDS
  32.     #error Do not use ncbs.inc and ncbs_forwards.inc in one script.
  33.     #endinput
  34. #endif
  35. #include <ncbs_defines>
  36. #pragma library                 ncbs
  37. #define MAX_WEAPON_SLOTS        13
  38. #define INVALID_WEAPON_SLOT_ID  -1
  39. #if defined USE_PLAYER_CALLBACKS
  40.     #if defined CB_OnPlayerEnteredVehicle
  41. forward OnPlayerEnteredVehicle(playerid, vehicleid, seatid);
  42.     #endif
  43.     #if defined CB_OnPlayerExitedVehicle
  44. forward OnPlayerExitedVehicle(playerid, vehicleid);
  45.     #endif
  46.     #if defined CB_OnPlayerSkinChange
  47. forward OnPlayerSkinChange(playerid, oldskin, newskin);
  48.     #endif
  49.     #if defined CB_OnPlayerHoldWeaponChange
  50. forward OnPlayerHoldWeaponChange(playerid, oldslot, oldweapon, newslot, newweapon);
  51.     #endif
  52.     #if defined CB_OnPlayerWeaponStateChange
  53. forward OnPlayerWeaponStateChange(playerid, oldstate, newstate);
  54.     #endif
  55.     #if defined USE_WEAPON_DATA_CALLBACKS
  56.         #if defined CB_OnPlayerWeaponDataChange
  57. forward OnPlayerWeaponDataChange(playerid, slot, oldweapon, newweapon);
  58.         #endif
  59.         #if defined CB_OnPlayerAmmoDataChange
  60. forward OnPlayerAmmoDataChange(playerid, slot, oldammo, newammo);
  61.         #endif
  62.     #endif
  63.     #if defined CB_OnPlayerMoneyChange
  64. forward OnPlayerMoneyChange(playerid, oldmoney, newmoney);
  65.     #endif
  66.     #if defined CB_OnPlayerHealthChange
  67. forward OnPlayerHealthChange(playerid, Float:oldhealth, Float:newhealth);
  68.     #endif
  69.     #if defined CB_OnPlayerArmourChange
  70. forward OnPlayerArmourChange(playerid, Float:oldarmour, Float:newarmour);
  71.     #endif
  72.     #if defined CB_OnPlayerAnimationIndexChange
  73. forward OnPlayerAnimationIndexChange(playerid, oldindex, newindex);
  74.     #endif
  75.     #if defined CB_OnPlayerSpecialActionChange
  76. forward OnPlayerSpecialActionChange(playerid, oldsaction, newsaction);
  77.     #endif
  78.     #if defined CB_OnPlayerAnalogKeysChange
  79. forward OnPlayerAnalogKeysChange(playerid, oldy, newy, oldx, newx);
  80.     #endif
  81.     #if defined CB_OnPlayerVehicleHealthChange
  82. forward OnPlayerVehicleHealthChange(playerid, vehicleid, Float:oldhealth, Float:newhealth, bool:isissuer);
  83.     #endif
  84.     #if defined CB_OnPlayerVirtualWorldChange
  85. forward OnPlayerVirtualWorldChange(playerid, oldworld, newworld);
  86.     #endif
  87. enum CallBack_Infos
  88. {
  89.     nCallBack_VehicleID,
  90.     nCallBack_VehicleSeat,
  91.     nCallBack_Skin,
  92.     nCallBack_HoldWeapon,
  93.     nCallBack_WeaponState,
  94.     nCallBack_Weapon[MAX_WEAPON_SLOTS],
  95.     nCallBack_Ammo[MAX_WEAPON_SLOTS],
  96.     nCallBack_Money,
  97.     Float:nCallBack_Health,
  98.     Float:nCallBack_Armour,
  99.     nCallBack_Animation,
  100.     nCallBack_SpecialAction,
  101.     nCallBack_KeyY,
  102.     nCallBack_KeyX,
  103.     Float:nCallBack_VehicleHealth,
  104.     bool:nCallBack_KickedBanned,
  105.     nCallBack_OPUTime,
  106. };
  107. new pCallBack_Info[MAX_PLAYERS][CallBack_Infos], OPC_CallBack, OPDC_CallBack, OPSC_CallBack, OPU_CallBack;
  108.     #define ETI_ReturnOPC(%0) ((OPC_CallBack != -1) ? CallLocalFunction("ETI_OnPlayerConnect", %0) : 1)
  109.     #define ETI_ReturnOPDC(%0) ((OPDC_CallBack != -1) ? CallLocalFunction("ETI_OnPlayerDisconnect", %0) : 1)
  110.     #define ETI_ReturnOPSC(%0) ((OPSC_CallBack != -1) ? CallLocalFunction("ETI_OnPlayerStateChange", %0) : 1)
  111.     #define ETI_ReturnOPU(%0) ((OPU_CallBack != -1) ? CallLocalFunction("ETI_OnPlayerUpdate", %0) : 1)
  112. stock GetWeaponSlot_ETI(weaponid)
  113. {
  114.     new slot;
  115.     switch(weaponid)
  116.     {
  117.         case 0,1: slot = 0;
  118.         case 2..9: slot = 1;
  119.         case 22..24: slot = 2;
  120.         case 25..27: slot = 3;
  121.         case 28,29,32: slot = 4;
  122.         case 30,31: slot = 5;
  123.         case 33,34: slot = 6;
  124.         case 35..38: slot = 7;
  125.         case 16..18,39: slot = 8;
  126.         case 41..43: slot = 9;
  127.         case 10..15: slot = 10;
  128.         case 44..46: slot = 11;
  129.         case 40: slot = 12;
  130.         default: slot = INVALID_WEAPON_SLOT_ID;
  131.     }
  132.     return slot;
  133. }
  134.     #if defined FILTERSCRIPT
  135. public OnFilterScriptInit()
  136. {
  137.     #else
  138. public OnGameModeInit()
  139. {
  140.     #endif
  141.     OPC_CallBack = funcidx("OnPlayerConnect");
  142.     OPDC_CallBack = funcidx("OnPlayerDisconnect");
  143.     OPSC_CallBack = funcidx("OnPlayerStateChange");
  144.     OPU_CallBack = funcidx("OnPlayerUpdate");
  145.     #if defined FILTERSCRIPT
  146.     return (funcidx("ETI_OnFilterScriptInit") != -1) ? CallLocalFunction("ETI_OnFilterScriptInit","") : 1;
  147.     #else
  148.     return (funcidx("ETI_OnGameModeInit") != -1) ? CallLocalFunction("ETI_OnGameModeInit","") : 1;
  149.     #endif
  150. }
  151.     #if defined FILTERSCRIPT
  152.         #if defined _ALS_OnFilterScriptInit
  153.             #undef OnFilterScriptInit
  154.         #else
  155.             #define _ALS_OnFilterScriptInit
  156.         #endif
  157.         #define OnFilterScriptInit ETI_OnFilterScriptInit
  158. forward ETI_OnFilterScriptInit();
  159.     #else
  160.         #if defined _ALS_OnGameModeInit
  161.             #undef OnGameModeInit
  162.         #else
  163.             #define _ALS_OnGameModeInit
  164.         #endif
  165.         #define OnGameModeInit ETI_OnGameModeInit
  166. forward ETI_OnGameModeInit();
  167.     #endif
  168. public OnPlayerConnect(playerid)
  169. {
  170.     #if defined CB_OnPlayerHealthChange
  171.     pCallBack_Info[playerid][nCallBack_Health] = 100.0;
  172.     #endif
  173.     #if defined CB_OnPlayerVehicleHealthChange
  174.     pCallBack_Info[playerid][nCallBack_VehicleHealth] = 1000.0;
  175.     #endif
  176.     #if defined CB_OnPlayerEnteredVehicle
  177.     pCallBack_Info[playerid][nCallBack_VehicleSeat] = -1;
  178.     #elseif defined CB_OnPlayerExitedVehicle
  179.     pCallBack_Info[playerid][nCallBack_VehicleSeat] = -1;
  180.     #endif
  181.     pCallBack_Info[playerid][nCallBack_KickedBanned] = false;
  182.     return ETI_ReturnOPC("d", playerid);
  183. }
  184.     #if defined _ALS_OnPlayerConnect
  185.         #undef OnPlayerConnect
  186.     #else
  187.         #define _ALS_OnPlayerConnect
  188.     #endif
  189.     #define OnPlayerConnect ETI_OnPlayerConnect
  190. forward ETI_OnPlayerConnect(playerid);
  191. public OnPlayerDisconnect(playerid, reason)
  192. {
  193.     #if defined CB_OnPlayerEnteredVehicle
  194.     pCallBack_Info[playerid][nCallBack_VehicleID] = 0;
  195.     pCallBack_Info[playerid][nCallBack_VehicleSeat] = 0;
  196.     #elseif defined CB_OnPlayerExitedVehicle
  197.     pCallBack_Info[playerid][nCallBack_VehicleID] = 0;
  198.     pCallBack_Info[playerid][nCallBack_VehicleSeat] = 0;
  199.     #endif
  200.     #if defined CB_OnPlayerSkinChange
  201.     pCallBack_Info[playerid][nCallBack_Skin] = 0;
  202.     #endif
  203.     #if defined CB_OnPlayerWeaponChange
  204.     pCallBack_Info[playerid][nCallBack_HoldWeapon] = 0;
  205.     #endif
  206.     #if defined CB_OnPlayerWeaponStateChange
  207.     pCallBack_Info[playerid][nCallBack_WeaponState] = 0;
  208.     #endif
  209.     #if defined USE_WEAPON_DATA_CALLBACKS
  210.     for(new i = 0; i < MAX_WEAPON_SLOTS; i++)
  211.     {
  212.         #if defined CB_OnPlayerWeaponDataChange
  213.         pCallBack_Info[playerid][nCallBack_Weapon][i] = 0;
  214.         #endif
  215.         #if defined CB_OnPlayerAmmoDataChange
  216.         pCallBack_Info[playerid][nCallBack_Ammo][i] = 0;
  217.         #endif
  218.     }
  219.     #endif
  220.     #if defined CB_OnPlayerMoneyChange
  221.     pCallBack_Info[playerid][nCallBack_Money] = 0;
  222.     #endif
  223.     #if defined CB_OnPlayerHealthChange
  224.     pCallBack_Info[playerid][nCallBack_Health] = 0.0;
  225.     #endif
  226.     #if defined CB_OnPlayerArmourChange
  227.     pCallBack_Info[playerid][nCallBack_Armour] = 0.0;
  228.     #endif
  229.     #if defined CB_OnPlayerAnimationIndexChange
  230.     pCallBack_Info[playerid][nCallBack_Animation] = 0;
  231.     #endif
  232.     #if defined CB_OnPlayerSpecialActionChange
  233.     pCallBack_Info[playerid][nCallBack_SpecialAction] = 0;
  234.     #endif
  235.     #if defined CB_OnPlayerVehicleHealthChange
  236.     pCallBack_Info[playerid][nCallBack_VehicleHealth] = 0.0;
  237.     #endif
  238.     #if defined CB_OnPlayerAnalogKeysChange
  239.     pCallBack_Info[playerid][nCallBack_KeyY] = 0;
  240.     pCallBack_Info[playerid][nCallBack_KeyX] = 0;
  241.     #endif
  242.     return ETI_ReturnOPDC("dd", playerid, reason);
  243. }
  244.     #if defined _ALS_OnPlayerDisconnect
  245.         #undef OnPlayerDisconnect
  246.     #else
  247.         #define _ALS_OnPlayerDisconnect
  248.     #endif
  249.     #define OnPlayerDisconnect ETI_OnPlayerDisconnect
  250. forward ETI_OnPlayerDisconnect(playerid, reason);
  251. public OnPlayerStateChange(playerid, newstate, oldstate)
  252. {
  253.     new OPSC_VehicleID = GetPlayerVehicleID(playerid), OPSC_VehicleSeat = GetPlayerVehicleSeat(playerid);
  254.     #if defined CB_OnPlayerEnteredVehicle
  255.     if((newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER) && (oldstate != PLAYER_STATE_DRIVER && oldstate != PLAYER_STATE_PASSENGER))
  256.     {
  257.         GetVehicleHealth(pCallBack_Info[playerid][nCallBack_VehicleID], pCallBack_Info[playerid][nCallBack_VehicleHealth]);
  258.         #if defined USE_IN_ALL_SCRIPTS
  259.         CallRemoteFunction("OnPlayerEnteredVehicle", "ddd", playerid, OPSC_VehicleID, OPSC_VehicleSeat);
  260.         #else
  261.         CallLocalFunction("OnPlayerEnteredVehicle", "ddd", playerid, OPSC_VehicleID, OPSC_VehicleSeat);
  262.         #endif
  263.         pCallBack_Info[playerid][nCallBack_VehicleID] = OPSC_VehicleID;
  264.         pCallBack_Info[playerid][nCallBack_VehicleSeat] = OPSC_VehicleSeat;
  265.     }
  266.         #if defined CB_OnPlayerExitedVehicle
  267.     else
  268.         #endif
  269.     #endif
  270.     #if defined CB_OnPlayerExitedVehicle
  271.     if((newstate != PLAYER_STATE_DRIVER && newstate != PLAYER_STATE_PASSENGER) && (oldstate == PLAYER_STATE_DRIVER || oldstate == PLAYER_STATE_PASSENGER))
  272.     {
  273.         pCallBack_Info[playerid][nCallBack_VehicleHealth] = 1000.0;
  274.         #if defined USE_IN_ALL_SCRIPTS
  275.         CallRemoteFunction("OnPlayerExitedVehicle", "dd", playerid, pCallBack_Info[playerid][nCallBack_VehicleID]);
  276.         #else
  277.         CallLocalFunction("OnPlayerExitedVehicle", "dd", playerid, pCallBack_Info[playerid][nCallBack_VehicleID]);
  278.         #endif
  279.         pCallBack_Info[playerid][nCallBack_VehicleID] = 0;
  280.         pCallBack_Info[playerid][nCallBack_VehicleSeat] = -1;
  281.     }
  282.     #endif
  283.     return ETI_ReturnOPSC("ddd", playerid, newstate, oldstate);
  284. }
  285.     #if defined _ALS_OnPlayerStateChange
  286.         #undef OnPlayerStateChange
  287.     #else
  288.         #define _ALS_OnPlayerStateChange
  289.     #endif
  290.     #define OnPlayerStateChange ETI_OnPlayerStateChange
  291. forward ETI_OnPlayerStateChange(playerid, newstate, oldstate);
  292. public OnPlayerUpdate(playerid)
  293. {
  294.     if(pCallBack_Info[playerid][nCallBack_KickedBanned]) return ETI_ReturnOPU("d", playerid);
  295.     new update_Variable[CallBack_Infos];
  296.     #if defined USE_OPU_DELAY
  297.         #if defined USE_OPU_SECONDS
  298.     update_Variable[nCallBack_OPUTime] = gettime();
  299.         #else
  300.     update_Variable[nCallBack_OPUTime] = GetTickCount();
  301.         #endif
  302.     if(pCallBack_Info[playerid][nCallBack_OPUTime]+ADD_OPU_DELAY >= update_Variable[nCallBack_OPUTime]) return ETI_ReturnOPU("d", playerid);
  303.     pCallBack_Info[playerid][nCallBack_OPUTime] = update_Variable[nCallBack_OPUTime];
  304.     #endif
  305.     #if defined CB_OnPlayerSkinChange
  306.     update_Variable[nCallBack_Skin] = GetPlayerSkin(playerid);
  307.     if(pCallBack_Info[playerid][nCallBack_Skin] != update_Variable[nCallBack_Skin])
  308.     {
  309.         #if defined USE_IN_ALL_SCRIPTS
  310.         CallRemoteFunction("OnPlayerSkinChange", "ddd", playerid, pCallBack_Info[playerid][nCallBack_Skin], update_Variable[nCallBack_Skin]);
  311.         #else
  312.         CallLocalFunction("OnPlayerSkinChange", "ddd", playerid, pCallBack_Info[playerid][nCallBack_Skin], update_Variable[nCallBack_Skin]);
  313.         #endif
  314.         pCallBack_Info[playerid][nCallBack_Skin] = update_Variable[nCallBack_Skin];
  315.     }
  316.     #endif
  317.     #if defined CB_OnPlayerHoldWeaponChange
  318.     update_Variable[nCallBack_HoldWeapon] = GetPlayerWeapon(playerid);
  319.     if(pCallBack_Info[playerid][nCallBack_HoldWeapon] != update_Variable[nCallBack_HoldWeapon])
  320.     {
  321.         #if defined USE_IN_ALL_SCRIPTS
  322.         CallRemoteFunction("OnPlayerHoldWeaponChange", "ddddd", playerid, GetWeaponSlot_ETI(pCallBack_Info[playerid][nCallBack_HoldWeapon]), pCallBack_Info[playerid][nCallBack_HoldWeapon], GetWeaponSlot_ETI(update_Variable[nCallBack_HoldWeapon]), update_Variable[nCallBack_HoldWeapon]);
  323.         #else
  324.         CallLocalFunction("OnPlayerHoldWeaponChange", "ddddd", playerid, GetWeaponSlot_ETI(pCallBack_Info[playerid][nCallBack_HoldWeapon]), pCallBack_Info[playerid][nCallBack_HoldWeapon], GetWeaponSlot_ETI(update_Variable[nCallBack_HoldWeapon]), update_Variable[nCallBack_HoldWeapon]);
  325.         #endif
  326.         pCallBack_Info[playerid][nCallBack_HoldWeapon] = update_Variable[nCallBack_HoldWeapon];
  327.     }
  328.     #endif
  329.     #if defined CB_OnPlayerWeaponStateChange
  330.     update_Variable[nCallBack_WeaponState] = GetPlayerWeaponState(playerid);
  331.     if(pCallBack_Info[playerid][nCallBack_WeaponState] != update_Variable[nCallBack_WeaponState])
  332.     {
  333.         #if defined USE_IN_ALL_SCRIPTS
  334.         CallRemoteFunction("OnPlayerWeaponStateChange", "ddd", playerid, pCallBack_Info[playerid][nCallBack_WeaponState], update_Variable[nCallBack_WeaponState]);
  335.         #else
  336.         CallLocalFunction("OnPlayerWeaponStateChange", "ddd", playerid, pCallBack_Info[playerid][nCallBack_WeaponState], update_Variable[nCallBack_WeaponState]);
  337.         #endif
  338.         pCallBack_Info[playerid][nCallBack_WeaponState] = update_Variable[nCallBack_WeaponState];
  339.     }
  340.     #endif
  341.     #if defined USE_WEAPON_DATA_CALLBACKS
  342.     for(new i = 0; i < MAX_WEAPON_SLOTS; i++)
  343.     {
  344.         GetPlayerWeaponData(playerid, i, update_Variable[nCallBack_Weapon][i], update_Variable[nCallBack_Ammo][i]);
  345.         #if defined CB_OnPlayerWeaponDataChange
  346.         if(pCallBack_Info[playerid][nCallBack_Weapon][i] != update_Variable[nCallBack_Weapon][i])
  347.         {
  348.             #if defined USE_IN_ALL_SCRIPTS
  349.             CallRemoteFunction("OnPlayerWeaponDataChange", "dddd", playerid, i, pCallBack_Info[playerid][nCallBack_Weapon][i], update_Variable[nCallBack_Weapon][i]);
  350.             #else
  351.             CallLocalFunction("OnPlayerWeaponDataChange", "dddd", playerid, i, pCallBack_Info[playerid][nCallBack_Weapon][i], update_Variable[nCallBack_Weapon][i]);
  352.             #endif
  353.             pCallBack_Info[playerid][nCallBack_Weapon][i] = update_Variable[nCallBack_Weapon][i];
  354.         }
  355.         #endif
  356.         #if defined CB_OnPlayerAmmoDataChange
  357.         if(pCallBack_Info[playerid][nCallBack_Ammo][i] != update_Variable[nCallBack_Ammo][i])
  358.         {
  359.             #if defined USE_IN_ALL_SCRIPTS
  360.             CallRemoteFunction("OnPlayerAmmoDataChange", "dddd", playerid, i, pCallBack_Info[playerid][nCallBack_Ammo][i], update_Variable[nCallBack_Ammo][i]);
  361.             #else
  362.             CallLocalFunction("OnPlayerAmmoDataChange", "dddd", playerid, i, pCallBack_Info[playerid][nCallBack_Ammo][i], update_Variable[nCallBack_Ammo][i]);
  363.             #endif
  364.             pCallBack_Info[playerid][nCallBack_Ammo][i] = update_Variable[nCallBack_Ammo][i];
  365.         }
  366.         #endif
  367.     }
  368.     #endif
  369.     #if defined CB_OnPlayerMoneyChange
  370.     update_Variable[nCallBack_Money] = GetPlayerMoney(playerid);
  371.     if(pCallBack_Info[playerid][nCallBack_Money] != update_Variable[nCallBack_Money])
  372.     {
  373.         #if defined USE_IN_ALL_SCRIPTS
  374.         CallRemoteFunction("OnPlayerMoneyChange", "ddd", playerid, pCallBack_Info[playerid][nCallBack_Money], update_Variable[nCallBack_Money]);
  375.         #else
  376.         CallLocalFunction("OnPlayerMoneyChange", "ddd", playerid, pCallBack_Info[playerid][nCallBack_Money], update_Variable[nCallBack_Money]);
  377.         #endif
  378.         pCallBack_Info[playerid][nCallBack_Money] = update_Variable[nCallBack_Money];
  379.     }
  380.     #endif
  381.     #if defined CB_OnPlayerHealthChange
  382.     GetPlayerHealth(playerid, update_Variable[nCallBack_Health]);
  383.     if(pCallBack_Info[playerid][nCallBack_Health] != update_Variable[nCallBack_Health])
  384.     {
  385.         #if defined USE_IN_ALL_SCRIPTS
  386.         CallRemoteFunction("OnPlayerHealthChange", "dff", playerid, pCallBack_Info[playerid][nCallBack_Health], update_Variable[nCallBack_Health]);
  387.         #else
  388.         CallLocalFunction("OnPlayerHealthChange", "dff", playerid, pCallBack_Info[playerid][nCallBack_Health], update_Variable[nCallBack_Health]);
  389.         #endif
  390.         pCallBack_Info[playerid][nCallBack_Health] = update_Variable[nCallBack_Health];
  391.     }
  392.     #endif
  393.     #if defined CB_OnPlayerArmourChange
  394.     GetPlayerArmour(playerid, update_Variable[nCallBack_Armour]);
  395.     if(pCallBack_Info[playerid][nCallBack_Armour] != update_Variable[nCallBack_Armour])
  396.     {
  397.         #if defined USE_IN_ALL_SCRIPTS
  398.         CallRemoteFunction("OnPlayerArmourChange", "dff", playerid, pCallBack_Info[playerid][nCallBack_Armour], update_Variable[nCallBack_Armour]);
  399.         #else
  400.         CallLocalFunction("OnPlayerArmourChange", "dff", playerid, pCallBack_Info[playerid][nCallBack_Armour], update_Variable[nCallBack_Armour]);
  401.         #endif
  402.         pCallBack_Info[playerid][nCallBack_Armour] = update_Variable[nCallBack_Armour];
  403.     }
  404.     #endif
  405.     #if defined CB_OnPlayerAnimationIndexChange
  406.     update_Variable[nCallBack_Animation] = GetPlayerAnimationIndex(playerid);
  407.     if(pCallBack_Info[playerid][nCallBack_Animation] != update_Variable[nCallBack_Animation])
  408.     {
  409.         #if defined USE_IN_ALL_SCRIPTS
  410.         CallRemoteFunction("OnPlayerAnimationIndexChange", "ddd", playerid, pCallBack_Info[playerid][nCallBack_Animation], update_Variable[nCallBack_Animation]);
  411.         #else
  412.         CallLocalFunction("OnPlayerAnimationIndexChange", "ddd", playerid, pCallBack_Info[playerid][nCallBack_Animation], update_Variable[nCallBack_Animation]);
  413.         #endif
  414.         pCallBack_Info[playerid][nCallBack_Animation] = update_Variable[nCallBack_Animation];
  415.     }
  416.     #endif
  417.     #if defined CB_OnPlayerSpecialActionChange
  418.     update_Variable[nCallBack_SpecialAction] = GetPlayerSpecialAction(playerid);
  419.     if(pCallBack_Info[playerid][nCallBack_SpecialAction] != update_Variable[nCallBack_SpecialAction])
  420.     {
  421.         #if defined USE_IN_ALL_SCRIPTS
  422.         CallRemoteFunction("OnPlayerSpecialActionChange", "ddd", playerid, pCallBack_Info[playerid][nCallBack_SpecialAction], update_Variable[nCallBack_SpecialAction]);
  423.         #else
  424.         CallLocalFunction("OnPlayerSpecialActionChange", "ddd", playerid, pCallBack_Info[playerid][nCallBack_SpecialAction], update_Variable[nCallBack_SpecialAction]);
  425.         #endif
  426.         pCallBack_Info[playerid][nCallBack_SpecialAction] = update_Variable[nCallBack_SpecialAction];
  427.     }
  428.     #endif
  429.     #if defined CB_OnPlayerAnalogKeysChange
  430.     new dumpkeys;
  431.     GetPlayerKeys(playerid, dumpkeys, update_Variable[nCallBack_KeyY], update_Variable[nCallBack_KeyX]);
  432.     #pragma unused dumpkeys
  433.     if(pCallBack_Info[playerid][nCallBack_KeyY] != update_Variable[nCallBack_KeyY] || pCallBack_Info[playerid][nCallBack_KeyX] != update_Variable[nCallBack_KeyX])
  434.     {
  435.         #if defined USE_IN_ALL_SCRIPTS
  436.         CallRemoteFunction("OnPlayerAnalogKeysChange", "ddddd", playerid, pCallBack_Info[playerid][nCallBack_KeyY], update_Variable[nCallBack_KeyY], pCallBack_Info[playerid][nCallBack_KeyX], update_Variable[nCallBack_KeyX]);
  437.         #else
  438.         CallLocalFunction("OnPlayerAnalogKeysChange", "ddddd", playerid, pCallBack_Info[playerid][nCallBack_KeyY], update_Variable[nCallBack_KeyY], pCallBack_Info[playerid][nCallBack_KeyX], update_Variable[nCallBack_KeyX]);
  439.         #endif
  440.         pCallBack_Info[playerid][nCallBack_KeyY] = update_Variable[nCallBack_KeyY];
  441.         pCallBack_Info[playerid][nCallBack_KeyX] = update_Variable[nCallBack_KeyX];
  442.     }
  443.     #endif
  444.     #if defined CB_OnPlayerVehicleHealthChange
  445.     update_Variable[nCallBack_VehicleID] = pCallBack_Info[playerid][nCallBack_VehicleID];
  446.     update_Variable[nCallBack_VehicleSeat] = pCallBack_Info[playerid][nCallBack_VehicleSeat];
  447.     if(update_Variable[nCallBack_VehicleID] != 0)
  448.     {
  449.         GetVehicleHealth(update_Variable[nCallBack_VehicleID], update_Variable[nCallBack_VehicleHealth]);
  450.         if(pCallBack_Info[playerid][nCallBack_VehicleHealth] != update_Variable[nCallBack_VehicleHealth])
  451.         {
  452.         #if defined USE_IN_ALL_SCRIPTS
  453.             CallRemoteFunction("OnPlayerVehicleHealthChange", "ddffl", playerid, update_Variable[nCallBack_VehicleID], pCallBack_Info[playerid][nCallBack_VehicleHealth], update_Variable[nCallBack_VehicleHealth], (update_Variable[nCallBack_VehicleSeat] == 0) ? true : false);
  454.         #else
  455.             CallLocalFunction("OnPlayerVehicleHealthChange", "ddffl", playerid, update_Variable[nCallBack_VehicleID], pCallBack_Info[playerid][nCallBack_VehicleHealth], update_Variable[nCallBack_VehicleHealth], (update_Variable[nCallBack_VehicleSeat] == 0) ? true : false);
  456.         #endif
  457.             pCallBack_Info[playerid][nCallBack_VehicleHealth] = update_Variable[nCallBack_VehicleHealth];
  458.         }
  459.     }
  460.     #endif
  461.     return ETI_ReturnOPU("d", playerid);
  462. }
  463.     #if defined _ALS_OnPlayerUpdate
  464.         #undef OnPlayerUpdate
  465.     #else
  466.         #define _ALS_OnPlayerUpdate
  467.     #endif
  468.     #define OnPlayerUpdate ETI_OnPlayerUpdate
  469. forward ETI_OnPlayerUpdate(playerid);
  470.     #if defined CB_OnPlayerVirtualWorldChange
  471.         #if !defined _ETI_SetPlayerVirtualWorld
  472.             #define _ETI_SetPlayerVirtualWorld
  473. stock ETI_SetPlayerVirtualWorld(playerid, worldid)
  474. {
  475.     new oldworld = GetPlayerVirtualWorld(playerid);
  476.     if(oldworld != worldid)
  477.             #if defined USE_IN_ALL_SCRIPTS
  478.     CallRemoteFunction("OnPlayerVirtualWorldChange", "ddd", playerid, oldworld, worldid);
  479.             #else
  480.     CallLocalFunction("OnPlayerVirtualWorldChange", "ddd", playerid, oldworld, worldid);
  481.             #endif
  482.     SetPlayerVirtualWorld(playerid, worldid);
  483.     return 1;
  484. }
  485.             #define SetPlayerVirtualWorld(%0) ETI_SetPlayerVirtualWorld(%0)
  486.         #endif
  487.     #endif
  488.     #if !defined _ETI_Kick
  489.         #define _ETI_Kick
  490. forward ETI_Kick(playerid);
  491. public ETI_Kick(playerid)
  492. {
  493.     pCallBack_Info[playerid][nCallBack_KickedBanned] = true;
  494.     Kick(playerid);
  495.     return 1;
  496. }
  497.         #define Kick(%0) ETI_Kick(%0)
  498.     #endif
  499.     #if !defined _ETI_Ban
  500.         #define _ETI_Ban
  501. forward ETI_Ban(playerid);
  502. public ETI_Ban(playerid)
  503. {
  504.     pCallBack_Info[playerid][nCallBack_KickedBanned] = true;
  505.     Ban(playerid);
  506.     return 1;
  507. }
  508.         #define Ban(%0) ETI_Ban(%0)
  509.     #endif
  510.     #if !defined _ETI_BanEx
  511.         #define _ETI_BanEx
  512. forward ETI_BanEx(playerid, const reason[]);
  513. public ETI_BanEx(playerid, const reason[])
  514. {
  515.     pCallBack_Info[playerid][nCallBack_KickedBanned] = true;
  516.     BanEx(playerid, reason);
  517.     return 1;
  518. }
  519.         #define BanEx(%0) ETI_BanEx(%0)
  520.     #endif
  521. #endif
  522. #if defined USE_PVAR_CALLBACKS
  523.     #if defined CB_OnPVarDelete
  524. forward OnPVarDelete(playerid, varname[], oldtype);
  525.     #endif
  526.     #if defined CB_OnPVarCreate
  527. forward OnPVarCreate(playerid, varname[], type);
  528.     #endif
  529.     #if defined CB_OnPVarTypeChange
  530. forward OnPVarTypeChange(playerid, varname[], oldtype, newtype);
  531.     #endif
  532. forward OnPVarIntChange(playerid, varname[], oldint_value, newint_value);
  533. forward OnPVarStringChange(playerid, varname[], oldstring_value[], newstring_value[]);
  534. forward OnPVarFloatChange(playerid, varname[], Float:oldfloat_value, Float:newfloat_value);
  535.     #if !defined ReturnPVarString
  536. stock ReturnPVarString(playerid, varname[])
  537. {
  538.     new pvstring[1024];
  539.     GetPVarString(playerid, varname, pvstring, sizeof(pvstring));
  540.     return pvstring;
  541. }
  542.     #endif
  543.     #if defined CB_OnPVarDelete
  544.         #if !defined _ETI_DeletePVar
  545.             #define ETI_DeletePVar
  546. forward ETI_DeletePVar(playerid, varname[]);
  547. public ETI_DeletePVar(playerid, varname[])
  548. {
  549.     new pvartype = GetPVarType(playerid, varname);
  550.     if(DeletePVar(playerid, varname))
  551.     {
  552.             #if defined USE_IN_ALL_SCRIPTS
  553.         CallRemoteFunction("OnPVarDelete", "dsd", playerid, varname, pvartype);
  554.             #else
  555.         CallLocalFunction("OnPVarDelete", "dsd", playerid, varname, pvartype);
  556.             #endif
  557.         return 1;
  558.     }
  559.     return 0;
  560. }
  561.             #define DeletePVar(%0) ETI_DeletePVar(%0)
  562.         #endif
  563.     #endif
  564.     #if !defined _ETI_SetPVarInt
  565.         #define ETI_SetPVarInt
  566. forward ETI_SetPVarInt(playerid, varname[], int_value);
  567. public ETI_SetPVarInt(playerid, varname[], int_value)
  568. {
  569.         #if defined CB_OnPVarCreate
  570.     if(GetPVarType(playerid, varname) == 0)
  571.             #if defined USE_IN_ALL_SCRIPTS
  572.     CallRemoteFunction("OnPVarCreate", "dsd", playerid, varname, 1);
  573.             #else
  574.     CallLocalFunction("OnPVarCreate", "dsd", playerid, varname, 1);
  575.             #endif
  576.             #if defined CB_OnPVarTypeChange
  577.     else
  578.             #endif
  579.         #endif
  580.         #if defined CB_OnPVarTypeChange
  581.     if(GetPVarType(playerid, varname) != 0 && GetPVarType(playerid, varname) != 1)
  582.             #if defined USE_IN_ALL_SCRIPTS
  583.     CallRemoteFunction("OnPVarTypeChange", "dsdd", playerid, varname, GetPVarType(playerid, varname), 1);
  584.             #else
  585.     CallLocalFunction("OnPVarTypeChange", "dsdd", playerid, varname, GetPVarType(playerid, varname), 1);
  586.             #endif
  587.             #if defined CB_OnPVarIntChange
  588.     else
  589.             #endif
  590.         #endif
  591.         #if defined CB_OnPVarIntChange
  592.     if(GetPVarInt(playerid, varname) != int_value)
  593.             #if defined USE_IN_ALL_SCRIPTS
  594.     CallRemoteFunction("OnPVarIntChange", "dsdd", playerid, varname, GetPVarInt(playerid, varname), int_value);
  595.             #else
  596.     CallLocalFunction("OnPVarIntChange", "dsdd", playerid, varname, GetPVarInt(playerid, varname), int_value);
  597.             #endif
  598.         #endif
  599.     SetPVarInt(playerid, varname, int_value);
  600.     return 1;
  601. }
  602.         #define SetPVarInt(%0) ETI_SetPVarInt(%0)
  603.     #endif
  604.     #if !defined _ETI_SetPVarString
  605.         #define _ETI_SetPVarString
  606. forward ETI_SetPVarString(playerid, varname[], string_value[]);
  607. public ETI_SetPVarString(playerid, varname[], string_value[])
  608. {
  609.         #if defined CB_OnPVarCreate
  610.     if(GetPVarType(playerid, varname) == 0)
  611.             #if defined USE_IN_ALL_SCRIPTS
  612.     CallRemoteFunction("OnPVarCreate", "dsd", playerid, varname, 2);
  613.             #else
  614.     CallLocalFunction("OnPVarCreate", "dsd", playerid, varname, 2);
  615.             #endif
  616.             #if defined CB_OnPVarTypeChange
  617.     else
  618.             #endif
  619.         #endif
  620.         #if defined CB_OnPVarTypeChange
  621.     if(GetPVarType(playerid, varname) != 0 && GetPVarType(playerid, varname) != 2)
  622.             #if defined USE_IN_ALL_SCRIPTS
  623.     CallRemoteFunction("OnPVarTypeChange", "dsdd", playerid, varname, GetPVarType(playerid, varname), 2);
  624.             #else
  625.     CallLocalFunction("OnPVarTypeChange", "dsdd", playerid, varname, GetPVarType(playerid, varname), 2);
  626.             #endif
  627.             #if defined CB_OnPVarStringChange
  628.     else
  629.     {
  630.             #endif
  631.         #endif
  632.         #if defined CB_OnPVarStringChange
  633.         new strcmpval = strcmp(ReturnPVarString(playerid, varname), string_value);
  634.         if(strcmpval == -1 || strcmpval == 1)
  635.             #if defined USE_IN_ALL_SCRIPTS
  636.         CallRemoteFunction("OnPVarStringChange", "dsss", playerid, varname, ReturnPVarString(playerid, varname), string_value);
  637.             #else
  638.         CallLocalFunction("OnPVarStringChange", "dsss", playerid, varname, ReturnPVarString(playerid, varname), string_value);
  639.             #endif
  640.             #if defined CB_OnPVarTypeChange
  641.     }
  642.             #endif
  643.         #endif
  644.     SetPVarString(playerid, varname, string_value);
  645.     return 1;
  646. }
  647.         #define SetPVarString(%0) ETI_SetPVarString(%0)
  648.     #endif
  649.     #if !defined _ETI_SetPVarFloat
  650.         #define _ETI_SetPVarFloat
  651. forward ETI_SetPVarFloat(playerid, varname[], Float:float_value);
  652. public ETI_SetPVarFloat(playerid, varname[], Float:float_value)
  653. {
  654.         #if defined CB_OnPVarCreate
  655.     if(GetPVarType(playerid, varname) == 0)
  656.             #if defined USE_IN_ALL_SCRIPTS
  657.     CallRemoteFunction("OnPVarCreate", "dsd", playerid, varname, 3);
  658.             #else
  659.     CallLocalFunction("OnPVarCreate", "dsd", playerid, varname, 3);
  660.             #endif
  661.             #if defined CB_OnPVarTypeChange
  662.     else
  663.             #endif
  664.         #endif
  665.         #if defined CB_OnPVarTypeChange
  666.     if(GetPVarType(playerid, varname) != 0 && GetPVarType(playerid, varname) != 3)
  667.             #if defined USE_IN_ALL_SCRIPTS
  668.     CallRemoteFunction("OnPVarTypeChange", "dsdd", playerid, varname, GetPVarType(playerid, varname), 3);
  669.             #else
  670.     CallLocalFunction("OnPVarTypeChange", "dsdd", playerid, varname, GetPVarType(playerid, varname), 3);
  671.             #endif
  672.             #if defined CB_OnPVarFloatChange
  673.     else
  674.             #endif
  675.         #endif
  676.         #if defined CB_OnPVarFloatChange
  677.     if(GetPVarFloat(playerid, varname) != float_value)
  678.             #if defined USE_IN_ALL_SCRIPTS
  679.     CallRemoteFunction("OnPVarFloatChange", "dsff", playerid, varname, GetPVarFloat(playerid, varname), float_value);
  680.             #else
  681.     CallLocalFunction("OnPVarFloatChange", "dsff", playerid, varname, GetPVarFloat(playerid, varname), float_value);
  682.             #endif
  683.         #endif
  684.     SetPVarFloat(playerid, varname, float_value);
  685.     return 1;
  686. }
  687.         #define SetPVarFloat(%0) ETI_SetPVarFloat(%0)
  688.     #endif
  689. #endif
  690.  
  691. /*
  692. ETIETIETIETI    ETI         ETIETIETIETI    BigBigBigBig    BigBigBigBigBig     Big
  693. ETI       ETI   ETI       ETI               Big                   Big           Big
  694. ETI        ETI  ETI      ETI                Big                   Big           Big
  695. ETI       ETI   ETI     ETI                 Big                   Big           Big
  696. ETIETIETIETI    ETI     ETI    ETIETIETI    BigBigBig             Big           Big
  697. ETI       ETI   ETI     ETI          ETI    Big                   Big           Big
  698. ETI        ETI  ETI      ETI         ETI    Big                   Big           Big
  699. ETI       ETI   ETI       ETI        ETI    Big                   Big           Big
  700. ETIETIETIETI    ETI         ETIETIETIETI    BigBigBigBig          Big           Big
  701. */
  702.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement