-- This is so the script can be reloaded without destroying the g_arena variable if g_arena == nil then --- [[ Globals ]] -------- g_state = nil -- The global GameState class g_arena = nil -- The global arena class, to avoid having to pass it around functions g_bGameRunning = false -- Is the game running? dofile("../sharedlua/utility.lua") dofile("../sharedlua/Modstuff.lua") dofile("../sharedlua/Survey.lua") dofile("../sharedlua/LcStuff.lua") g_accessfile = "../Conquest_Resources/ScriptAccess.txt" end function Arena_OnCreate(arena) -- Set our global value g_arena = arena -- Initialize random math.randomseed(os.time()) end -- Begin modifications function Msg_OnCommand(player, command, payload, recipient, msg_type) local cmd = string.lower(command) if(cmd == "?coord" or cmd == "?coords" ) then local pos = player:coords() player:message("Your coordinates are x= " .. pos.x .. ", y= " .. pos.y .. ", z= " .. pos.z .. ", rotation= " ..pos.rotation) else survey(player, command, payload, recipient, msg_type) LcStuff(player, command, payload, recipient, msg_type) ModStuff(player, command, payload, recipient, msg_type) end if isonmodlist(player.m_name) then if(cmd == "?hello") then logcmd(g_arena.m_name, player, command, payload, recipient, msg_type) g_arena:message("Hello world") end end end -- end modifications -- Begin modifications function Item_OnPickUp(looter, loot, loot_type, amounttopickup) local vid = looter:getVehicle():vehicletypeid() --Collective if (((vid == 103) or (vid == 100) or (vid == 109) or (vid == 107) or (vid == 106) or (vid == 105)) and (looter:inventory_find("Equip Agile Combat Suit") > 0) and (loot_type.m_name == "Agile Combat Suit Change")) then looter:setVehicle(103) elseif (((vid == 103) or (vid == 100) or (vid == 109) or (vid == 107) or (vid == 106) or (vid == 105)) and (looter:inventory_find("Equip Assault Combat Suit") > 0) and (loot_type.m_name == "Assault Combat Suit Change")) then looter:setVehicle(100) elseif (((vid == 103) or (vid == 100) or (vid == 109) or (vid == 107) or (vid == 106) or (vid == 105)) and (looter:inventory_find("Equip Camoflage Combat Suit") > 0) and (loot_type.m_name == "Camoflage Combat Suit Change")) then looter:setVehicle(109) elseif (((vid == 103) or (vid == 100) or (vid == 109) or (vid == 107) or (vid == 106) or (vid == 105)) and (looter:inventory_find("Equip Infilitration Combat Suit") > 0) and (loot_type.m_name == "Infil. Combat Suit Change")) then looter:setVehicle(107) elseif (((vid == 103) or (vid == 100) or (vid == 109) or (vid == 107) or (vid == 106) or (vid == 105)) and (looter:inventory_find("Equip Reinforced Combat Suit") > 0) and (loot_type.m_name == "Agile Reinforced Suit Change")) then looter:setVehicle(106) elseif (((vid == 103) or (vid == 100) or (vid == 109) or (vid == 107) or (vid == 106) or (vid == 105)) and (looter:inventory_find("Equip Standard Combat Suit") > 0) and (loot_type.m_name == "Standard Combat Suit Change")) then looter:setVehicle(105) --Titan elseif (((vid == 113) or (vid == 112) or (vid == 116) or (vid == 117) or (vid == 115) or (vid == 12)) and (looter:inventory_find("Equip Agile Combat Suit") > 0) and (loot_type.m_name == "Agile Combat Suit Change")) then looter:setVehicle(113) elseif (((vid == 113) or (vid == 112) or (vid == 116) or (vid == 117) or (vid == 115) or (vid == 12)) and (looter:inventory_find("Equip Assault Combat Suit") > 0) and (loot_type.m_name == "Assault Combat Suit Change")) then looter:setVehicle(112) elseif (((vid == 113) or (vid == 112) or (vid == 116) or (vid == 117) or (vid == 115) or (vid == 12)) and (looter:inventory_find("Equip Camoflage Combat Suit") > 0) and (loot_type.m_name == "Camoflage Combat Suit Change")) then looter:setVehicle(116) elseif (((vid == 113) or (vid == 112) or (vid == 116) or (vid == 117) or (vid == 115) or (vid == 12)) and (looter:inventory_find("Equip Infilitration Combat Suit") > 0) and (loot_type.m_name == "Infil. Combat Suit Change")) then looter:setVehicle(117) elseif (((vid == 113) or (vid == 112) or (vid == 116) or (vid == 117) or (vid == 115) or (vid == 12)) and (looter:inventory_find("Equip Reinforced Combat Suit") > 0) and (loot_type.m_name == "Agile Reinforced Suit Change")) then looter:setVehicle(115) elseif (((vid == 113) or (vid == 112) or (vid == 116) or (vid == 117) or (vid == 115) or (vid == 12)) and (looter:inventory_find("Equip Standard Combat Suit") > 0) and (loot_type.m_name == "Standard Combat Suit Change")) then looter:setVehicle(12) end return true end -- end modifications function Vehicle_OnProduce(user, menuitem) local vid = user:getVehicle():vehicletypeid() -- Standard Combat Suit --- Europa if (((vid == 103) or (vid == 100) or (vid == 109) or (vid == 107) or (vid == 106) or (vid == 105)) and (menuitem == 1) and (user:inventory_find("SCS MT-Robots") > 0)) then user:setVehicle(105) --- Titan elseif (((vid == 113) or (vid == 112) or (vid == 116) or (vid == 117) or (vid == 115) or (vid == 12)) and (menuitem == 1) and (user:inventory_find("SCS MT-Robots") > 0)) then user:setVehicle(12) -- Assault Combat Suit --- Europa elseif (((vid == 103) or (vid == 100) or (vid == 109) or (vid == 107) or (vid == 106) or (vid == 105)) and (menuitem == 3) and (user:inventory_find("ATCS MT-Robots") > 0)) then user:setVehicle(100) --- Titan elseif (((vid == 113) or (vid == 112) or (vid == 116) or (vid == 117) or (vid == 115) or (vid == 12)) and (menuitem == 3) and (user:inventory_find("ATCS MT-Robots") > 0)) then user:setVehicle(112) -- Camoflage Combat Suit --- Europa elseif (((vid == 103) or (vid == 100) or (vid == 109) or (vid == 107) or (vid == 106) or (vid == 105)) and (menuitem == 5) and (user:inventory_find("CCS MT-Robots") > 0)) then user:setVehicle(109) --- Titan elseif (((vid == 113) or (vid == 112) or (vid == 116) or (vid == 117) or (vid == 115) or (vid == 12)) and (menuitem == 5) and (user:inventory_find("CCS MT-Robots") > 0)) then user:setVehicle(116) -- Infilitration Combat Suit --- Europa elseif (((vid == 103) or (vid == 100) or (vid == 109) or (vid == 107) or (vid == 106) or (vid == 105)) and (menuitem == 7) and (user:inventory_find("ICS MT-Robots") > 0)) then user:setVehicle(107) --- Titan elseif (((vid == 113) or (vid == 112) or (vid == 116) or (vid == 117) or (vid == 115) or (vid == 12)) and (menuitem == 7) and (user:inventory_find("ICS MT-Robots") > 0)) then user:setVehicle(117) -- Agile Combat Suit --- Europa elseif (((vid == 103) or (vid == 100) or (vid == 109) or (vid == 107) or (vid == 106) or (vid == 105)) and (menuitem == 9) and (user:inventory_find("AECS MT-Robots") > 0)) then user:setVehicle(103) --- Titan elseif (((vid == 113) or (vid == 112) or (vid == 116) or (vid == 117) or (vid == 115) or (vid == 12)) and (menuitem == 9) and (user:inventory_find("AECS MT-Robots") > 0)) then user:setVehicle(113) -- Reinforced Combat Suit --- Europa elseif (((vid == 103) or (vid == 100) or (vid == 109) or (vid == 107) or (vid == 106) or (vid == 105)) and (menuitem == 11) and (user:inventory_find("RCS MT-Robots") > 0)) then user:setVehicle(106) --- Titan elseif (((vid == 113) or (vid == 112) or (vid == 116) or (vid == 117) or (vid == 115) or (vid == 12)) and (menuitem == 11) and (user:inventory_find("RCS MT-Robots") > 0)) then user:setVehicle(115) end return true end -- resurrection script function Vehicle_OnDeath(victim, killer, itemid) local vid = victim:getVehicle():vehicletypeid() local c = victim:coords() local s = victim:getStat() local kid = killer:getVehicle():vehicletypeid() if (vid == 103) then victim:setstat(1,103) elseif (vid == 100) then victim:setstat(1,100) elseif (vid == 109) then victim:setstat(1,109) elseif (vid == 107) then victim:setstat(1,107) elseif (vid == 106) then victim:setstat(1,106) elseif (vid == 105) then victim:setstat(1,105) elseif (vid == 113) then victim:setstat(1,113) elseif (vid == 112) then victim:setstat(1,112) elseif (vid == 116) then victim:setstat(1,116) elseif (vid == 117) then victim:setstat(1,117) elseif (vid == 115) then victim:setstat(1,115) elseif (vid == 12) then victim:setstat(1,12) --Shockpad Eurpa if ((itemid == 1025) and ((kid == 103) or (kid == 100) or (kid == 109) or (kid == 107) or (kid == 106) or (kid == 105)) and (vid == 118)) then if (victim:getstat(1) == 103) then victim:setVehicle(103) victim:clearStats() elseif (victim:getstat(1) == 100) then victim:setVehicle(100) victim:clearStats() elseif (victim:getstat(1) == 109) then victim:setVehicle(109) victim:clearStats() elseif (victim:getstat(1) == 107) then victim:setVehicle(107) victim:clearStats() elseif (victim:getstat(1) == 106) then victim:setVehicle(106) victim:clearStats() elseif (victim:getstat(1) == 105) then victim:setVehicle(105) victim:clearStats() -- Shockpad Titan elseif ((itemid == 1025) and ((kid == 113) or (kid == 112) or (kid == 116) or (kid == 117) or (kid == 115) or (kid == 12)) and (vid == 118)) then if (victim:getstat(1) == 113) then victim:setVehicle(113) victim:clearStats() elseif (victim:getstat(1) == 112) then victim:setVehicle(112) victim:clearStats() elseif (victim:getstat(1) == 116) then victim:setVehicle(116) victim:clearStats() elseif (victim:getstat(1) == 117) then victim:setVehicle(117) victim:clearStats() elseif (victim:getstat(1) == 115) then victim:setVehicle(115) victim:clearStats() elseif (victim:getstat(1) == 12) then victim:setVehicle(12) victim:clearStats() ---death timer respawn elseif (itemid == 1026) then if (victim:getstat(1) == 113) then victim:warp(6000, 2448, 50) victim:setVehicle(113) victim:clearStats() elseif (victim:getstat(1) == 112) then victim:warp(6000, 2448, 50) victim:setVehicle(112) victim:clearStats() elseif (victim:getstat(1) == 116) then victim:warp(6000, 2448, 50) victim:setVehicle(116) victim:clearStats() elseif (victim:getstat(1) == 117) then victim:warp(6000, 2448, 50) victim:setVehicle(117) victim:clearStats() elseif (victim:getstat(1) == 115) then victim:warp(6000, 2448, 50) victim:setVehicle(115) victim:clearStats() elseif (victim:getstat(1) == 12) then victim:warp(5000, 2448, 50) victim:setVehicle(12) victim:clearStats() -- death timer respawn elseif (itemid == 1026) then if (victim:getstat(1) == 103) then victim:warp(14976, 2448, 50) victim:setVehicle(103) victim:clearStats() elseif (victim:getstat(1) == 100) then victim:warp(14976, 2448, 50) victim:setVehicle(100) victim:clearStats() elseif (victim:getstat(1) == 109) then victim:warp(14976, 2448, 50) victim:setVehicle(109) victim:clearStats() elseif (victim:getstat(1) == 107) then victim:warp(14976, 2448, 50) victim:setVehicle(107) victim:clearStats() elseif (victim:getstat(1) == 106) then victim:warp(14976, 2448, 50) victim:setVehicle(106) victim:clearStats() elseif (victim:getstat(1) == 105) then victim:warp(14976, 2448, 50) victim:setVehicle(105) victim:clearStats() -- if player dies and not corpse vehicle elseif ((vid == 113) or (vid == 112) or (vid == 116) or (vid == 117) or (vid == 115) or (vid == 12) or (vid == 103) or (vid == 100) or (vid == 109) or (vid == 107) or (vid == 106) or (vid == 105)) then victim:warp(c.x, c.y, 0) victim:setVehicle(118) arena:explosion_create("Corpse detector", c.x, c.y, 0) end