superzilla

Weaponslots.lua

Apr 11th, 2013
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 5.15 KB | None | 0 0
  1. t_weap = {}
  2. objects = {}
  3. --Set t_weap 1-4 with the weapon's object table.
  4. t_weap[1] = objects[22]
  5. t_weap[2] = objects[24]
  6. t_weap[3] = objects[13]
  7. --Objects Table (for handling purposes) (also origionally from wizard's scriptoid)
  8.         -- Bipeds
  9.         objects[1] = {"cyborg", "bipd", "characters\\cyborg_mp\\cyborg_mp"}
  10.  
  11.         -- Equipment
  12.         objects[2] = {"camo", "eqip", "powerups\\active camouflage"}
  13.         objects[3] = {"health", "eqip", "powerups\\health pack"}
  14.         objects[4] = {"overshield", "eqip", "powerups\\over shield"}
  15.         objects[5] = {"fnade", "eqip", "weapons\\frag grenade\\frag grenade"}
  16.         objects[6] = {"pnade", "eqip", "weapons\\plasma grenade\\plasma grenade"}
  17.  
  18.         -- Vehicles
  19.         objects[7] = {"shee", "vehi", "vehicles\\banshee\\banshee_mp"}
  20.         objects[8] = {"turret", "vehi", "vehicles\\c gun turret\\c gun turret_mp"}
  21.         objects[9] = {"ghost", "vehi", "vehicles\\ghost\\ghost_mp"}
  22.         objects[10] = {"rhog", "vehi", "vehicles\\rwarthog\\rwarthog"}
  23.         objects[11] = {"tank", "vehi", "vehicles\\scorpion\\scorpion_mp"}
  24.         objects[12] = {"hog", "vehi", "vehicles\\warthog\\mp_warthog"}
  25.  
  26.         -- Weapons
  27.         objects[13] = {"rifle", "weap", "weapons\\assault rifle\\assault rifle"}
  28.         objects[14] = {"ball", "weap", "weapons\\ball\\ball"}
  29.         objects[15] = {"flag", "weap", "weapons\\flag\\flag"}
  30.         objects[16] = {"flamethrower", "weap", "weapons\\flamethrower\\flamethrower"}
  31.         objects[17] = {"needler", "weap", "weapons\\needler\\mp_needler"}
  32.         objects[18] = {"pistol", "weap", "weapons\\pistol\\pistol"}
  33.         objects[19] = {"ppistol", "weap", "weapons\\plasma pistol\\plasma pistol"}
  34.         objects[20] = {"prifle", "weap", "weapons\\plasma rifle\\plasma rifle"}
  35.         objects[21] = {"frg", "weap", "weapons\\plasma_cannon\\plasma_cannon"}
  36.         objects[22] = {"rocket", "weap", "weapons\\rocket launcher\\rocket launcher"}
  37.         objects[23] = {"shotgun", "weap", "weapons\\shotgun\\shotgun"}
  38.         objects[24] = {"sniper", "weap", "weapons\\sniper rifle\\sniper rifle"}
  39.  
  40.         -- Projectiles
  41.         objects[25] = {"sheebolt", "proj", "vehicles\\banshee\\banshee bolt"}
  42.         objects[26] = {"sheerod", "proj", "vehicles\\banshee\\mp_banshee fuel rod"}
  43.         objects[27] = {"turretbolt", "proj", "vehicles\\c gun turret\\mp gun turret"}
  44.         objects[28] = {"ghostbolt", "proj", "vehicles\\ghost\\ghost bolt"}
  45.         objects[29] = {"tankshot", "proj", "vehicles\\scorpion\\bullet"}
  46.         objects[30] = {"tankshell", "proj", "vehicles\\scorpion\\tank shell"}
  47.         objects[31] = {"hogshot", "proj", "vehicles\\warthog\\bullet"}
  48.         objects[32] = {"rifleshot", "proj", "weapons\\assault rifle\\bullet"}
  49.         objects[33] = {"flame", "proj", "weapons\\flamethrower\\flame"}
  50.         objects[34] = {"needlershot", "proj", "weapons\\needler\\mp_needle"}
  51.         objects[35] = {"pistolshot", "proj", "weapons\\pistol\\bullet"}
  52.         objects[36] = {"ppistolbolt", "proj", "weapons\\plasma pistol\\bolt"}
  53.         objects[37] = {"priflebolt", "proj", "weapons\\plasma rifle\\bolt"}
  54.         objects[38] = {"priflecbolt", "proj", "weapons\\plasma rifle\\charged bolt"}
  55.         objects[39] = {"rocketproj", "proj", "weapons\\rocket launcher\\rocket"}
  56.         objects[40] = {"shottyshot", "proj", "weapons\\shotgun\\pellet"}
  57.         objects[41] = {"snipershot", "proj", "weapons\\sniper rifle\\sniper bullet"}
  58.  
  59. function GetRequiredVersion()
  60.     return 10057
  61. end
  62.  
  63. function OnPlayerSpawnEnd(player, m_objectId)
  64.     local weapobj3 = createobject(t_weap[1][2], t_weap[1][3], 0, 1, false, 0, 0, 0)
  65.     assignweapon(player, weapobj3)
  66.     table.insert(weapdespawning, weapobj3) -- created weapons can't be destroyed automatically, putting them in a table
  67. end
  68.  
  69. function OnServerCommand(player, command)
  70.  
  71.     local response = 1 --returns this variable when this function has completed. 1 means that the command should go through, 0 to block it.
  72.     local hash = gethash(player) --sets local variable hash to the player's hash who has done the command
  73.     local name = getname(player) --sets local variable hash to the player's hash who has done the command
  74.  
  75.     local toksize = getcmdtokencount(command) --same as count in OnServerChat except words in-between quotes are counted as one.
  76.     local cmd = getcmdtoken(command, 0) --Command being executed
  77.     local t = {}
  78.  
  79.     -- insert the tokens (words) into a table
  80.     for i=1,toksize do --i=1 then after i reaches local variable "toksize" stop the loop
  81.         local word = getcmdtoken(command, i-1)
  82.         word = string.lower(word)
  83.         table.insert(t, word)
  84.     end
  85.  
  86.     if t[1] == "sv_weaponslot" then response = weapSlotCommand(t[2], t[3])
  87.     end
  88.  
  89.     if response ~= 0 and response ~= 1 then
  90.         hprintf(response)
  91.         response = 0
  92.     end
  93.  
  94.     return response
  95. end
  96.  
  97. function weapSlotCommand(slot, weapon)
  98.     if slot > 0 and slot < 4 then
  99.         for i=1, #objects do
  100.             if objects[i][1] == weapon then
  101.                 t_weap[slot] = objects[i]
  102.                 return "Weapon \"" .. objects[i][1] .. "\" has been assigned to slot " .. slot "."
  103.             end
  104.             return "Invalid Weapon\n Correct Syntax: \"sv_weaponslot <slot #> <weapon>"
  105.         end
  106.     else
  107.         return "Invalid Slot #\n Correct Syntax: \"sv_weaponslot <slot #> <weapon>"
  108.     end
  109. end
  110.  
  111. function OnWeaponAssignment(player, object, count, tag)
  112.     if count == 0 then return lookuptag(t_weap[2][2], t_weap[2][3])
  113.     elseif count == 1 then return lookuptag(t_weap[3][2], t_weap[3][3])
  114.     end
  115. end
Advertisement
Add Comment
Please, Sign In to add comment