11.11.2009, 03:29
This is my code
it looks like it would work right?
well when i go in the game and i get brass knuckles, ak47, uzi, etc i type /test for the command to test this idea before i put it in my administration system and it removes the weapons and it only gives me my first weapon back thats in slot 1, (brass knuckles)
if you know why this is happening please help i really appreciate it as i am stumped, and turned to you guys for help
.
thank you to anyone that can solve/help my problem![Smiley](images/smilies/smile.png)
*Fixed*
Код:
//---(>Includes<)--- #include <a_samp> //---(>Dcmd<)--- #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1 //---(>Colors<)--- #define COLOR_GREEN 0x00FF00AA #define COLOR_YELLOW 0xFFFF00FF #define COLOR_WHITE 0xFFFFFFAA #define COLOR_SKYBLUE 0x99FFFFAA #define COLOR_RED 0xAA3333AA #define COLOR_ORANGE 0xFF9900AA #define COLOR_PURPLE 0xB360FDFF #define COLOR_BLUE 0x1229FAFF #define COLOR_PINK 0xE100E1FF #define COLOR_SYSTEM 0xEFEFF7AA #define COLOR_GRAY 0xCECECEFF enum wData { Slot1, Slot2, Slot3, Slot4, Slot5, Slot6, Slot7, Slot8, Slot9, Slot10, Slot11, Slot12 }; enum sAmmo { aSlot1, aSlot2, aSlot3, aSlot4, aSlot5, aSlot6, aSlot7, aSlot8, aSlot9, aSlot10, aSlot11, aSlot12 }; new pWeaponData[MAX_PLAYERS][wData]; new pAmmoData[MAX_PLAYERS][sAmmo]; public OnPlayerSpawn(playerid) { GivePlayerWeapon(playerid, 24, 1337); GivePlayerWeapon(playerid, 29, 666); GivePlayerWeapon(playerid, 31, 101); return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { if(strcmp(cmdtext, "/test", true)==0) { new weaponid; pWeaponData[playerid][Slot1] = GetPlayerWeaponData(playerid, 1, weaponid, pAmmoData[playerid][aSlot1]); pWeaponData[playerid][Slot2] = GetPlayerWeaponData(playerid, 2, weaponid, pAmmoData[playerid][aSlot2]); pWeaponData[playerid][Slot3] = GetPlayerWeaponData(playerid, 3, weaponid, pAmmoData[playerid][aSlot3]); pWeaponData[playerid][Slot4] = GetPlayerWeaponData(playerid, 4, weaponid, pAmmoData[playerid][aSlot4]); pWeaponData[playerid][Slot5] = GetPlayerWeaponData(playerid, 5, weaponid, pAmmoData[playerid][aSlot5]); pWeaponData[playerid][Slot6] = GetPlayerWeaponData(playerid, 6, weaponid, pAmmoData[playerid][aSlot6]); pWeaponData[playerid][Slot7] = GetPlayerWeaponData(playerid, 7, weaponid, pAmmoData[playerid][aSlot7]); pWeaponData[playerid][Slot8] = GetPlayerWeaponData(playerid, 8, weaponid, pAmmoData[playerid][aSlot8]); pWeaponData[playerid][Slot9] = GetPlayerWeaponData(playerid, 9, weaponid, pAmmoData[playerid][aSlot9]); pWeaponData[playerid][Slot10] = GetPlayerWeaponData(playerid, 10, weaponid, pAmmoData[playerid][aSlot10]); pWeaponData[playerid][Slot11] = GetPlayerWeaponData(playerid, 11, weaponid, pAmmoData[playerid][aSlot11]); pWeaponData[playerid][Slot12] = GetPlayerWeaponData(playerid, 12, weaponid, pAmmoData[playerid][aSlot12]); ResetPlayerWeapons(playerid); SetTimerEx("RestoreWeapons", 5000, 0, "i", playerid); SendClientMessage(playerid, COLOR_GREEN, "- Your weapons will be restored in 5 seconds!"); return 1; } return 0; } forward RestoreWeapons(playerid); public RestoreWeapons(playerid) { GivePlayerWeapon(playerid, pWeaponData[playerid][Slot1], pAmmoData[playerid][aSlot1]); GivePlayerWeapon(playerid, pWeaponData[playerid][Slot2], pAmmoData[playerid][aSlot2]); GivePlayerWeapon(playerid, pWeaponData[playerid][Slot3], pAmmoData[playerid][aSlot3]); GivePlayerWeapon(playerid, pWeaponData[playerid][Slot4], pAmmoData[playerid][aSlot4]); GivePlayerWeapon(playerid, pWeaponData[playerid][Slot5], pAmmoData[playerid][aSlot5]); GivePlayerWeapon(playerid, pWeaponData[playerid][Slot6], pAmmoData[playerid][aSlot6]); GivePlayerWeapon(playerid, pWeaponData[playerid][Slot7], pAmmoData[playerid][aSlot7]); GivePlayerWeapon(playerid, pWeaponData[playerid][Slot8], pAmmoData[playerid][aSlot8]); GivePlayerWeapon(playerid, pWeaponData[playerid][Slot9], pAmmoData[playerid][aSlot9]); GivePlayerWeapon(playerid, pWeaponData[playerid][Slot10], pAmmoData[playerid][aSlot10]); GivePlayerWeapon(playerid, pWeaponData[playerid][Slot11], pAmmoData[playerid][aSlot11]); GivePlayerWeapon(playerid, pWeaponData[playerid][Slot12], pAmmoData[playerid][aSlot12]); SendClientMessage(playerid, COLOR_GREEN, "- Your weapons have been restored!"); } //---(>Sscanf - End of Script<)--- stock sscanf(string[], format[], {Float,_}:...) { new formatPos = 0, stringPos = 0, paramPos = 2, paramCount = numargs(); while (paramPos < paramCount && string[stringPos]) { switch (format[formatPos++]) { case '\0': { return 0; } case 'i', 'd': { new neg = 1, num = 0, ch = string[stringPos]; if (ch == '-') { neg = -1; ch = string[++stringPos]; } do { stringPos++; if (ch >= '0' && ch <= '9') { num = (num * 10) + (ch - '0'); } else { return 1; } } while ((ch = string[stringPos]) && ch != ' '); setarg(paramPos, 0, num * neg); } case 'h', 'x': { new ch, num = 0; while ((ch = string[stringPos++])) { switch (ch) { case 'x', 'X': { num = 0; continue; } case '0' .. '9': { num = (num << 4) | (ch - '0'); } case 'a' .. 'f': { num = (num << 4) | (ch - ('a' - 10)); } case 'A' .. 'F': { num = (num << 4) | (ch - ('A' - 10)); } case ' ': { break; } default: { return 1; } } } setarg(paramPos, 0, num); } case 'c': { setarg(paramPos, 0, string[stringPos++]); } case 'f': { new tmp[25]; strmid(tmp, string, stringPos, stringPos+sizeof(tmp)-2); setarg(paramPos, 0, _:floatstr(tmp)); } case 's', 'z': { new i = 0, ch; if (format[formatPos]) { while ((ch = string[stringPos++]) && ch != ' ') { setarg(paramPos, i++, ch); } if (!i) return 1; } else { while ((ch = string[stringPos++])) { setarg(paramPos, i++, ch); } } stringPos--; setarg(paramPos, i, '\0'); } default: { continue; } } while (string[stringPos] && string[stringPos] != ' ') { stringPos++; } while (string[stringPos] == ' ') { stringPos++; } paramPos++; } while (format[formatPos] == 'z') formatPos++; return format[formatPos]; }
well when i go in the game and i get brass knuckles, ak47, uzi, etc i type /test for the command to test this idea before i put it in my administration system and it removes the weapons and it only gives me my first weapon back thats in slot 1, (brass knuckles)
if you know why this is happening please help i really appreciate it as i am stumped, and turned to you guys for help
![Smiley](images/smilies/smile.png)
thank you to anyone that can solve/help my problem
![Smiley](images/smilies/smile.png)
*Fixed*