Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- TROLL DUOMENU SCRIPT v13 PRO
- function openmenu(menu)
- menu:show()
- end
- ---------------
- -- MAIN --
- ---------------
- -- SPOOF FUNCTIONS
- if not inGame() then
- spoof1 = spoof1 or function()
- SetConfig('SpoofName', 'Douglby', true)
- end
- spoof2 = spoof2 or function()
- SetConfig('SpoofName', 'Jack Goff', true)
- end
- spoof3 = spoof3 or function()
- SetConfig('SpoofName', 'Duke Nukem', true)
- end
- spoof4 = spoof4 or function()
- SetConfig('SpoofName', 'Mike Litoris', true)
- end
- spoof5 = spoof5 or function()
- SetConfig('SpoofName', 'Smelly Pirate Captain', true)
- end
- spoof6 = spoof6 or function()
- SetConfig('SpoofName', 'Alotta Fagina', true)
- end
- spoof7 = spoof7 or function()
- SetConfig('SpoofName', 'Harry P. Ness', true)
- end
- spoof8 = spoof8 or function()
- SetConfig('SpoofName', 'Ran Sidass', true)
- end
- spoof9 = spoof9 or function()
- SetConfig('SpoofName', 'Buster Hyman', true)
- end
- spoof10 = spoof10 or function()
- SetConfig('SpoofName', 'Phillip Purass', true)
- end
- spoof11 = spoof11 or function()
- SetConfig('SpoofName', 'Sandy Cervix', true)
- end
- spoof12 = spoof12 or function()
- SetConfig('SpoofName', 'Spongebob', true)
- end
- spoof13 = spoof13 or function()
- SetConfig('SpoofName', 'Bender', true)
- end
- spoof14 = spoof14 or function()
- SetConfig('SpoofName', 'Rusty Kuntz', true)
- end
- spoof15 = spoof15 or function()
- SetConfig('SpoofName', 'Clee Torres', true)
- end
- spoof16 = spoof16 or function()
- SetConfig('SpoofName', 'Homer Sexual', true)
- end
- spoof17 = spoof17 or function()
- SetConfig('SpoofName', 'I. C. Kuntz', true)
- end
- spoof18 = spoof18 or function()
- SetConfig('SpoofName', 'Ivanna Humpalot', true)
- end
- spoof19 = spoof19 or function()
- SetConfig('SpoofName', 'Seymore Butts', true)
- end
- spoof20 = spoof20 or function()
- SetConfig('SpoofName', 'Justin Heranus', true)
- end
- spoof21 = spoof21 or function()
- SetConfig('SpoofName', 'Carrie Mysac', true)
- end
- spoof22 = spoof22 or function()
- SetConfig('SpoofName', 'Lou Scunt', true)
- end
- spoof23 = spoof23 or function()
- SetConfig('SpoofName', 'Mike Oxsbig', true)
- end
- spoof24 = spoof24 or function()
- SetConfig('SpoofName', 'Wilma Fingerdoo', true)
- end
- spoof25 = spoof25 or function()
- SetConfig('SpoofName', 'Phillip Oliver Holz', true)
- end
- spoof26 = spoof26 or function()
- SetConfig('SpoofName', 'Ol\' Dirty Bastard', true)
- end
- spoof27 = spoof27 or function()
- SetConfig('SpoofName', 'CHEATING ALLOWED', true)
- end
- spoof28 = spoof28 or function()
- SetConfig('SpoofName', 'I LOVE CHEATS', true)
- end
- spoof29 = spoof29 or function()
- SetConfig('SpoofName', 'CHEATERS \'R US', true)
- end
- spoof30 = spoof30 or function()
- SetConfig('SpoofName', 'Rockefella', true)
- end
- spoof31 = spoof31 or function()
- SetConfig('SpoofName', 'Generous George', true)
- end
- spoof32 = spoof32 or function()
- SetConfig('SpoofName', 'Simplity', true)
- end
- spoof33 = spoof33 or function()
- SetConfig('SpoofName', 'Newbie Booster', true)
- end
- spoof34 = spoof34 or function()
- SetConfig('SpoofName', 'madMAX', true)
- end
- festoriginal = festoriginal or function()
- SetConfig('SpoofName', 'locust9', true)
- end
- nameandy = nameandy or function()
- SetConfig('SpoofName', 'OVERKILL.Andreas', true)
- end
- namevicky = namevicky or function()
- SetConfig('SpoofName', 'OVERKILL_Viktor', true)
- end
- namesimon = namesimon or function()
- SetConfig('SpoofName', 'SimonViklund', true)
- end
- namekillja = namekillja or function()
- SetConfig('SpoofName', 'Overkillja', true)
- end
- namepastej = namepastej or function()
- SetConfig('SpoofName', 'Pastej', true)
- end
- namecaret = namecaret or function()
- SetConfig('SpoofName', 'CaretCaret', true)
- end
- bobo = bobo or function()
- SetConfig('SpoofName', 'OVERKILL BO', true)
- end
- nameape = nameape or function()
- SetConfig('SpoofName', 'GurillaOverkilla', true)
- end
- namepearj = namepearj or function()
- SetConfig('SpoofName', 'OVERKILL_Per_J', true)
- end
- namealmighty = namealmighty or function()
- SetConfig('SpoofName', 'OVERKILL_Almir', true)
- end
- namewood = namewood or function()
- SetConfig('SpoofName', 'Guybrush Threepwood', true)
- end
- namevaas = namevaas or function()
- SetConfig('SpoofName', 'Vaas \'insanity\' Montenegro', true)
- end
- namegordon = namegordon or function()
- SetConfig('SpoofName', 'Gordon Freeman', true)
- end
- nameinvis = nameinvis or function()
- SetConfig('SpoofName', 'Invisible man', true)
- end
- namemaster = namemaster or function()
- SetConfig('SpoofName', 'Master Chief', true)
- end
- namenathan = namenathan or function()
- SetConfig('SpoofName', 'Nathan Drake', true)
- end
- namesolid = namesolid or function()
- SetConfig('SpoofName', 'Solid Snake', true)
- end
- namerubber = namerubber or function()
- SetConfig('SpoofName', 'Rubber man', true)
- end
- namesamf = namesamf or function()
- SetConfig('SpoofName', 'Sam Fisher', true)
- end
- namesephi = namesephi or function()
- SetConfig('SpoofName', 'Slynderdale', true)
- end
- namespider = namespider or function()
- SetConfig('SpoofName', 'Spiderman', true)
- end
- namemaxp = namemaxp or function()
- SetConfig('SpoofName', 'Max Payne', true)
- end
- namesuper = namesuper or function()
- SetConfig('SpoofName', 'Superman', true)
- end
- namebat = namebat or function()
- SetConfig('SpoofName', 'Baldwin', true)
- end
- namesissy1 = namesissy1 or function()
- SetConfig('SpoofName', 'King Nothing', true)
- end
- namesissy2 = namesissy2 or function()
- SetConfig('SpoofName', 'The Grim Reaper', true)
- end
- namesec1 = namesec1 or function()
- SetConfig('SpoofName', 'Adolf Hitler', true)
- end
- namesec2 = namesec2 or function()
- SetConfig('SpoofName', 'Joseph Stalin', true)
- end
- namesec3 = namesec3 or function()
- SetConfig('SpoofName', 'Vladimir Putin', true)
- end
- namesec4 = namesec4 or function()
- SetConfig('SpoofName', 'Mao Tse-Tung', true)
- end
- namesec5 = namesec5 or function()
- SetConfig('SpoofName', 'Vladimir Lenin', true)
- end
- namesec6 = namesec6 or function()
- SetConfig('SpoofName', 'Kim Jong Il', true)
- end
- namesec7 = namesec7 or function()
- SetConfig('SpoofName', 'Saddam Hussein', true)
- end
- namesec8 = namesec8 or function()
- SetConfig('SpoofName', 'Osama Bin Laden', true)
- end
- namesec9 = namesec9 or function()
- SetConfig('SpoofName', 'Slobodan Milosevic', true)
- end
- namesec10 = namesec10 or function()
- SetConfig('SpoofName', 'Idi Amin', true)
- end
- namesec11 = namesec11 or function()
- SetConfig('SpoofName', 'Benito Mussolini', true)
- end
- namesec12 = namesec12 or function()
- SetConfig('SpoofName', 'Pol Pot', true)
- end
- namesec13 = namesec13 or function()
- SetConfig('SpoofName', 'Harald Bluetooth', true)
- end
- namesec14 = namesec14 or function()
- SetConfig('SpoofName', 'Hirohito', true)
- end
- namesec15 = namesec15 or function()
- SetConfig('SpoofName', 'Asskicker', true)
- end
- namesec16 = namesec16 or function()
- SetConfig('SpoofName', 'Motherfucker', true)
- end
- namesec17 = namesec17 or function()
- SetConfig('SpoofName', 'Bitchslapper', true)
- end
- namesec18 = namesec18 or function()
- SetConfig('SpoofName', 'Copkiller', true)
- end
- namesec19 = namesec19 or function()
- SetConfig('SpoofName', 'v00d00', true)
- end
- namesec20 = namesec20 or function()
- SetConfig('SpoofName', 'Zomboss', true)
- end
- namerobo = namerobo or function()
- SetConfig('SpoofName', 'RoboCop', true)
- end
- namebates = namebates or function()
- SetConfig('SpoofName', 'Master Bates', true)
- end
- killkenny = killkenny or function()
- SetConfig('SpoofName', 'Kenneth The Janitor', true)
- end
- nametec = nametec or function()
- SetConfig('SpoofName', '\[TEC\] Anon', true)
- end
- Baddog = Baddog or function()
- SetConfig('SpoofName', 'Baddog-11', true)
- end
- cornholio = cornholio or function()
- SetConfig('SpoofName', 'Iam Cornholio', true)
- end
- PirateCaptain = PirateCaptain or function()
- SetConfig('SpoofName', 'Pirate Captain', true)
- end
- PiratePirateCaptain = PiratePirateCaptain or function()
- SetConfig('SpoofName', 'Pirate Pirate Captain', true)
- end
- CaptainPirate = CaptainPirate or function()
- SetConfig('SpoofName', 'Captain Pirate', true)
- end
- AxeWound = AxeWound or function()
- SetConfig('SpoofName', 'Axe Wound', true)
- end
- DemonicPirateCaptain = DemonicPirateCaptain or function()
- SetConfig('SpoofName', 'Demonic Pirate Captain', true)
- end
- Hax0r = Hax0r or function()
- SetConfig('SpoofName', 'Hax0r', true)
- end
- PiratePerfectionFan = PiratePerfectionFan or function()
- SetConfig('SpoofName', 'Pirate Perfection Fan#1', true)
- end
- end
- -------------------
- -- NO WAIT --
- -------------------
- dontwait = dontwait or function()
- if managers.network:game() then
- managers.network:game():spawn_players()
- end
- end
- ----------------
- -- GAME --
- ----------------
- if inGame() and isPlaying() then
- -- NORMALIZER
- if not _deadCop then _deadCop = CopDamage.die
- end
- function ServerSpawnBag(name) --spawn a bag on your position
- if not alive (managers.player:player_unit()) then return end
- local camera_ext = managers.player:player_unit():camera()
- if Network:is_client() then
- managers.network:session():send_to_host( "server_drop_carry", name, managers.money:get_bag_value(name), true, true, 1, camera_ext:position(), camera_ext:rotation(), camera_ext:forward(), 100)
- else
- managers.player:server_drop_carry(name, managers.money:get_bag_value(name), true, true, 1, camera_ext:position(), camera_ext:rotation(), camera_ext:forward(), 100)
- end
- end
- --GIVE YOURSELF A BAG TO CARRY
- function GiveBag(name)
- if not alive (managers.player:player_unit()) or managers.player:is_carrying() then return end
- managers.player:set_carry(name, managers.money:get_bag_value(name), true, true, 1)
- end
- -- NO CASH PENALTY FOR KILLING CIVILLIANS
- freekill = freekill or function()
- function MoneyManager.get_civilian_deduction() return 0
- end
- function MoneyManager.civilian_killed() return
- end
- function UnitNetworkHandler:sync_hostage_killed_warning( warning ) return 0
- end
- end
- --------------------
- -- SPAWN ODD BAGS --
- --------------------
- -- SPAWN BODY BAG
- sppersonbag = sppersonbag or function()
- ServerSpawnBag("person")
- managers.hud:show_hint( { text = "BODY BAG SPAWNED" } )
- end
- -- SPAWN PAINTING BAG
- sppaintbag = sppaintbag or function()
- ServerSpawnBag("painting")
- managers.hud:show_hint( { text = "PAINTING BAG SPAWNED" } )
- end
- -- SPAWN SERVER BAG
- spservbag = spservbag or function()
- ServerSpawnBag("circuit")
- managers.hud:show_hint( { text = "SERVER BAG SPAWNED" } )
- end
- -- SPAWN FUSION ENGINE BAG
- spenginebag = spenginebag or function()
- ServerSpawnBag("engine_01")
- managers.hud:show_hint( { text = "FUSION ENGINE BAG SPAWNED" } )
- end
- -- SPAWN THERMAL DRILL BAG
- spthermbag = spthermbag or function()
- ServerSpawnBag("lance_bag")
- managers.hud:show_hint( { text = "THERMAL DRILL BAG SPAWNED" } )
- end
- -- SPAWN THERMAL DRILL BAG SELF
- spsthermbag = spsthermbag or function()
- GiveBag("lance_bag")
- end
- -- SPAWN TURRET BAGS
- spturret1 = spturret1 or function()
- ServerSpawnBag("turret")
- managers.hud:show_hint( { text = "TURRET WEAPON PART BAG SPAWNED" } )
- end
- -- SPAWN TURRET BAGS SELF
- spsturret1 = spsturret1 or function()
- GiveBag("turret")
- end
- --------------------------------
- -- ADD ODD STUFF TO INVENTORY --
- --------------------------------
- -- ADD DRILL
- spdrillinv = spdrillinv or function()
- managers.player:add_special( { name = "drill", silent = true, amount = 1 } )
- managers.hud:show_hint( { text = "Drill added to inventory" } )
- end
- -- ADD GOLDBAR TO INVENTORY
- spgoldinv = spgoldinv or function()
- managers.player:add_special( { name = "gold", silent = false, amount = 1 } )
- managers.hud:show_hint( { text = "Goldbar added to inventory" } )
- end
- -- ADD CROWBAR
- spcrowinv = spcrowinv or function()
- managers.player:add_special( { name = "crowbar", silent = true, amount = 1 } )
- managers.hud:show_hint( { text = "Crowbar added to inventory" } )
- end
- -- ADD CHAVES KEY TO INVENTORY
- spchavesinv = spchavesinv or function()
- managers.player:add_special( { name = "chavez_key", silent = true, amount = 1 } )
- managers.hud:show_hint( { text = " Chaves Key added to inventory" } )
- end
- -- ADD BLOOD SAMPLE TO INVENTORY
- spbloodinv = spbloodinv or function()
- managers.player:add_special( { name = "blood_sample", silent = true, amount = 1 } )
- managers.hud:show_hint( { text = "Bloodsample added to inventory" } )
- end
- -- ADD GLASS CUTTER
- spgcutinv = spgcutinv or function()
- managers.player:add_special( { name = "glass_cutter", silent = true, amount = 1 } )
- managers.hud:show_hint( { text = "Glass cutter added to inventory" } )
- end
- -- ADD BANK MANAGER KEYCARD
- spbmkey = spbmkey or function()
- managers.player:add_special( { name = "bank_manager_key", silent = true, amount = 1 } )
- managers.hud:show_hint( { text = "Bankmanagers keycard added to inventory" } )
- end
- ----------------------------
- -- PLAYER STATE FUNCTIONS --
- ----------------------------
- statenorm = statenorm or function()
- managers.player:set_player_state( "standard" )
- end
- stateclean = stateclean or function()
- managers.player:set_player_state( "clean" )
- end
- statecarry = statecarry or function()
- managers.player:set_player_state( "carry" )
- end
- statecuffs = statecuffs or function()
- managers.player:set_player_state( "arrested" )
- end
- statetased = statetased or function()
- managers.player:set_player_state( "tased" )
- end
- stateblood = stateblood or function()
- managers.player:set_player_state( "bleed_out" )
- end
- stateinca = stateinca or function()
- managers.player:set_player_state( "incapacitated" )
- end
- statefatal = statefatal or function()
- managers.player:set_player_state( "fatal" )
- end
- ---------------------------------
- -- SYNC PLAYER STATE FUNCTIONS --
- ---------------------------------
- syncstatecuffs = syncstatecuffs or function(id)
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- if unit:network():peer():id() == id then
- unit:network():send_to_unit( { "sync_player_movement_state", unit, "arrested", 0, unit:id() } )
- end
- end
- end
- end
- syncstatetased = syncstatetased or function(id)
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- if unit:network():peer():id() == id then
- unit:network():send_to_unit( { "sync_player_movement_state", unit, "tased", 0, unit:id() } ) --electified? changed?
- end
- end
- end
- end
- syncstateclean = syncstateclean or function(id)
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- if unit:network():peer():id() == id then
- unit:network():send_to_unit( { "sync_player_movement_state", unit, "clean", 0, unit:id() } )
- end
- end
- end
- end
- syncstatestandard = syncstatestandard or function(id)
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- if unit:network():peer():id() == id then
- unit:network():send_to_unit( { "sync_player_movement_state", unit, "standard", 0, unit:id() } )
- end
- end
- end
- end
- -- BLEEDOUT PLY
- syncstatebleed_out = syncstatebleed_out or function(id)
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- if unit:network():peer():id() == id then
- unit:network():send_to_unit( { "sync_player_movement_state", unit, "bleed_out", 0, unit:id() } )
- end
- end
- end
- end
- -- FORCE CARRY
- syncforceengine = syncforceengine or function(id)
- local peer = managers.network:session():peer( id )
- managers.network:session():send_to_peers_synched( "sync_carry", id, "engine_02", managers.money:get_bag_value( "gold" ), 1,1,1 )
- managers.player:set_synced_carry( id, "engine_02", managers.money:get_bag_value( "gold" ), 1,1,1 )
- end
- -- INCAPACITATE PLY1
- syncstateincapacitated = syncstateincapacitated or function(id)
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- if unit:network():peer():id() == id then
- unit:network():send_to_unit( { "sync_player_movement_state", unit, "incapacitated", 0, unit:id() } )
- end
- end
- end
- end
- -- CRASH
- ctdply = ctdply or function(id)
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- if unit:network():peer():id() == id then
- unit:network():send( "set_equipped_weapon", "wpn_fps_pis_ppk", 0 )
- end
- end
- end
- end
- -- PLY1 LVL1
- ply1level1 = ply1level1 or function()
- local peer = managers.network:session():peer( 1 )
- if peer then
- peer:set_level( 1 )
- end
- managers.network:session():send_to_peers_synched( "sync_level_up", 1, 1 )
- end
- -- PLY2 LVL1
- ply2level1 = ply2level1 or function()
- local peer = managers.network:session():peer( 2 )
- if peer then
- peer:set_level( 1 )
- end
- managers.network:session():send_to_peers_synched( "sync_level_up", 2, 1 )
- end
- -- PLY3 LVL1
- ply3level1 = ply3level1 or function()
- local peer = managers.network:session():peer( 3 )
- if peer then
- peer:set_level( 1 )
- end
- managers.network:session():send_to_peers_synched( "sync_level_up", 3, 1 )
- end
- -- PLY4 LVL1
- ply4level1 = ply4level1 or function()
- local peer = managers.network:session():peer( 4 )
- if peer then
- peer:set_level( 1 )
- end
- managers.network:session():send_to_peers_synched( "sync_level_up", 4, 1 )
- end
- -- PLY1 LVL100
- ply1level100 = ply1level100 or function()
- local peer = managers.network:session():peer( 1 )
- if peer then
- peer:set_level( 100 )
- end
- managers.network:session():send_to_peers_synched( "sync_level_up", 1, 100 )
- end
- -- PLY2 LVL100
- ply2level100 = ply2level100 or function()
- local peer = managers.network:session():peer( 2 )
- if peer then
- peer:set_level( 100 )
- end
- managers.network:session():send_to_peers_synched( "sync_level_up", 2, 100 )
- end
- -- PLY3 LVL100
- ply3level100 = ply3level100 or function()
- local peer = managers.network:session():peer( 3 )
- if peer then
- peer:set_level( 100 )
- end
- managers.network:session():send_to_peers_synched( "sync_level_up", 3, 100 )
- end
- -- PLY4 LVL100
- ply4level100 = ply4level100 or function()
- local peer = managers.network:session():peer( 4 )
- if peer then
- peer:set_level( 100 )
- end
- managers.network:session():send_to_peers_synched( "sync_level_up", 4, 100 )
- end
- -- PLY1 LVL255
- ply1level255 = ply1level255 or function()
- local peer = managers.network:session():peer( 1 )
- if peer then
- peer:set_level( 255 )
- end
- managers.network:session():send_to_peers_synched( "sync_level_up", 1, 255 )
- end
- -- PLY2 LVL255
- ply2level255 = ply2level255 or function()
- local peer = managers.network:session():peer( 2 )
- if peer then
- peer:set_level( 255 )
- end
- managers.network:session():send_to_peers_synched( "sync_level_up", 2, 255 )
- end
- -- PLY3 LVL255
- ply3level255 = ply3level255 or function()
- local peer = managers.network:session():peer( 3 )
- if peer then
- peer:set_level( 255 )
- end
- managers.network:session():send_to_peers_synched( "sync_level_up", 3, 255 )
- end
- -- PLY4 LVL255
- ply4level255 = ply4level255 or function()
- local peer = managers.network:session():peer( 4 )
- if peer then
- peer:set_level( 255 )
- end
- managers.network:session():send_to_peers_synched( "sync_level_up", 4, 255 )
- end
- -- TEAM TROLLING --
- -- CTD TEAM (HOST)
- ctdteam = ctdteam or function()
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- --if i == 4 then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- unit:network():send( "set_equipped_weapon", "wpn_fps_pis_ppk", 0 )
- --end
- --i = i + 1
- end
- end
- end
- -- CUFF ALL TEAMMEMBERS
- synccuffall = synccuffall or function()
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- unit:network():send_to_unit( { "sync_player_movement_state", unit, "arrested", 0, unit:id() } )
- end
- end
- end
- -- TASE ALL TEAMMEMBERS
- synctaseall = synctaseall or function()
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- unit:network():send_to_unit( { "sync_player_movement_state", unit, "tased", 0, unit:id() } )
- end
- end
- end
- -- BLEEDOUT ALL TEAMMEMBERS
- syncbleedall = syncbleedall or function()
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- unit:network():send_to_unit( { "sync_player_movement_state", unit, "bleed_out", 0, unit:id() } )
- end
- end
- end
- --INCAPACITATE ALL TEAMMEMBERS
- syncincaall = syncincaall or function()
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- unit:network():send_to_unit( { "sync_player_movement_state", unit, "incapacitated", 0, unit:id() } )
- end
- end
- end
- -- SET TEAM LEVEL 1
- teamlvl1 = teamlvl1 or function()
- local i = 1
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- local peer = managers.network:session():peer( i )
- peer:set_level( 1 )
- managers.network:session():send_to_peers_synched( "sync_level_up", i, 1 )
- end
- i = i + 1
- end
- end
- -- SET TEAM LEVEL 100
- teamlvl100 = teamlvl100 or function()
- local i = 1
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- local peer = managers.network:session():peer( i )
- peer:set_level( 100 )
- managers.network:session():send_to_peers_synched( "sync_level_up", i, 100 )
- end
- i = i + 1
- end
- end
- -- SET TEAM LEVEL 255
- teamlvl255 = teamlvl255 or function()
- local i = 1
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- local peer = managers.network:session():peer( i )
- peer:set_level( 255 )
- managers.network:session():send_to_peers_synched( "sync_level_up", i, 255 )
- end
- i = i + 1
- end
- end
- -- TELEPORT PLAYER TO SELF
- teleporttoply = teleporttoply or function(id)
- local pos
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- if unit:network():peer():id() == id then
- pos = unit:position()
- end
- end
- end
- if pos then
- managers.player:warp_to(pos, managers.player:player_unit():rotation())
- end
- end
- -- KILL EM ALL
- function nukeunit(pawn)
- local col_ray = { }
- col_ray.ray = Vector3(1, 0, 0)
- col_ray.position = pawn.unit:position()
- local action_data = {}
- action_data.variant = "explosion"
- action_data.damage = 1000
- action_data.attacker_unit = managers.player:player_unit()
- action_data.col_ray = col_ray
- pawn.unit:character_damage():damage_explosion(action_data)
- end
- apocalypse = apocalypse or function()
- for u_key,u_data in pairs(managers.enemy:all_civilians()) do
- nukeunit(u_data)
- end
- for u_key,u_data in pairs(managers.enemy:all_enemies()) do
- u_data.char_tweak.has_alarm_pager = nil
- nukeunit(u_data)
- end
- end
- ------------------------------------------------
- -- FORCE SPECIFIC ESCAPE OR NO ESCAPE MISSION --
- ------------------------------------------------
- function unlock_asset( asset_id )
- local asset = managers.assets:_get_asset_by_id( asset_id )
- if asset then
- if Network:is_server() and not managers.assets:get_asset_triggered_by_id( asset_id ) then
- managers.assets:server_unlock_asset( asset_id )
- elseif not managers.assets:get_asset_unlocked_by_id( asset_id ) then
- managers.network:session():send_to_host( "server_unlock_asset", asset_id )
- end
- asset.show = true
- else
- table.insert( managers.assets._global.assets, { id=asset_id, unlocked=true, show=true, can_unlock=false } )
- end
- managers.assets:init_finalize()
- managers.menu_component:create_asset_mission_briefing_gui()
- end
- escnone = escnone or function()
- unlock_asset("safe_escape")
- end
- -------------------------------
- ---- COP TURN TO BULLDOZER ---
- -------------------------------
- function spawn_bulldozer(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_bulldozer_1/ene_bulldozer_1" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().bulldozer = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- bullcop = bullcop or function()
- if not _deadCop then _deadCop = CopDamage.die
- end
- function CopDamage:die( variant )
- return _deadCop(self, variant)
- end
- function CopDamage:die( ... )
- if not self._unit:base().bulldozer then
- spawn_bulldozer(self._unit:position(), self._unit:rotation())
- end
- local result = _deadCop( self, ... )
- return result
- end
- end
- --------------------------------
- ---------- MAKE PARTY ----------
- --------------------------------
- variant = { }
- unit = { }
- function spawnParty(i)
- variant[1] = "cm_sp_male_stripper"
- variant[2] = "cm_sp_dj_loop"
- variant[3] = "cf_sp_dance_slow"
- variant[4] = "cf_sp_dance_sexy"
- variant[5] = "cf_sp_pole_dancer_expert"
- variant[6] = "cf_sp_pole_dancer_basic"
- unit[1] = "units/payday2/characters/civ_male_casual_1/civ_male_casual_1"
- unit[2] = "units/payday2/characters/civ_female_casual_5/civ_female_casual_5"
- local _randoms2 = math.random(1,2)
- local _rUnit = unit[_randoms2]
- local _randoms = math.random(1,6)
- local state = variant[_randoms]
- local spawn_pos = managers.player:player_unit():position()
- local pos = Vector3(spawn_pos.x + math.random(1,85) * i , spawn_pos.y + math.random(1,25) * i , spawn_pos.z)
- local spawn_rot = managers.player:player_unit():rotation()
- local unit_name = Idstring( _rUnit)
- local unit = World:spawn_unit( unit_name, pos, spawn_rot )
- local action_data = { type = "act", body_part = 1, variant = state, clamp_to_graph = true, blocks = { light_hurt = -1, hurt = -1, heavy_hurt = -1, walk = -1 } }
- local spawn_ai = { init_state = "inactive" }
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():action_request( action_data )
- unit:set_active(true)
- end
- makeParty = makeParty or function()
- if Network:is_server() then
- for i=1,15 do
- spawnParty(i)
- end
- end
- end
- -------------------------------
- --- TWO COPS WHEN ONE DIES ---
- -------------------------------
- function spawn_cop_1(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_cop_1/ene_cop_1" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- unit:base().cop_1 = true
- end
- function spawn_cop_2(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_cop_2/ene_cop_2" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().cop_2 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_cop_3(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_cop_3/ene_cop_3" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().cop_3 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_cop_4(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_cop_4/ene_cop_4" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().cop_4 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_bulldozer(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_bulldozer_1/ene_bulldozer_1" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().bulldozer = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_fbi_1(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_fbi_1/ene_fbi_1" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().fbi_1 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_fbi_2(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_fbi_2/ene_fbi_2" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().fbi_2 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_fbi_3(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_fbi_3/ene_fbi_3" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().fbi_3 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_fbi_4(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_fbi_heavy_1/ene_fbi_heavy_1" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().fbi_4 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_swat_f_1(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_fbi_swat_1/ene_fbi_swat_1" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().swat_f_1 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_swat_f_2(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_fbi_swat_2/ene_fbi_swat_2" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().swat_f_2 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_shield_1(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_shield_1/ene_shield_1" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().shield_1 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_shield_2(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_shield_2/ene_shield_2" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().shield_2 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_sniper_1(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_sniper_1/ene_sniper_1" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().sniper_1 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_sniper_2(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_sniper_2/ene_sniper_2" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().sniper_2 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_spook_1(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_spook_1/ene_spook_1" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().spook_1 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_swat_1(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_swat_1/ene_swat_1" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().swat_1 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_swat_2(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_swat_2/ene_swat_2" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().swat_2 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_swat_heavy_1(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_swat_heavy_1/ene_swat_heavy_1" )
- local spawn_ai = { init_state = "attack" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().swat_heavy_1 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_tazer_1(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_tazer_1/ene_tazer_1" )
- local spawn_ai = { init_state = "idle" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().tazer_1 = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- onetotwo = onetotwo or function()
- if not _deadCop then _deadCop = CopDamage.die end
- function CopDamage:die( variant )
- return _deadCop(self, variant)
- end
- function CopDamage:die( ... )
- if not self._unit:base().cop_1 and self._unit:name() == Idstring("units/payday2/characters/ene_cop_1/ene_cop_1") then
- spawn_cop_1(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_cop_1(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().cop_2 and self._unit:name() == Idstring("units/payday2/characters/ene_cop_2/ene_cop_2") then
- spawn_cop_2(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_cop_2(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().cop_3 and self._unit:name() == Idstring("units/payday2/characters/ene_cop_3/ene_cop_3") then
- spawn_cop_3(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_cop_3(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().cop_4 and self._unit:name() == Idstring("units/payday2/characters/ene_cop_4/ene_cop_4") then
- spawn_cop_4(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_cop_4(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().bulldozer and self._unit:name() == Idstring("units/payday2/characters/ene_bulldozer_1/ene_bulldozer_1") then
- spawn_bulldozer(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_bulldozer(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().fbi_1 and self._unit:name() == Idstring("units/payday2/characters/ene_fbi_1/ene_fbi_1") then
- spawn_fbi_1(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_fbi_1(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().fbi_2 and self._unit:name() == Idstring("units/payday2/characters/ene_fbi_2/ene_fbi_2") then
- spawn_fbi_2(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_fbi_2(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().fbi_3 and self._unit:name() == Idstring("units/payday2/characters/ene_fbi_3/ene_fbi_3") then
- spawn_fbi_3(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_fbi_3(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().fbi_4 and self._unit:name() == Idstring("units/payday2/characters/ene_fbi_heavy_1/ene_fbi_heavy_1") then
- spawn_fbi_4(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_fbi_4(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().swat_f_1 and self._unit:name() == Idstring("units/payday2/characters/ene_fbi_swat_1/ene_fbi_swat_1") then
- spawn_swat_f_1(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_swat_f_1(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().swat_f_2 and self._unit:name() == Idstring("units/payday2/characters/ene_fbi_swat_2/ene_fbi_swat_2") then
- spawn_swat_f_2(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_swat_f_2(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().shield_1 and self._unit:name() == Idstring("units/payday2/characters/ene_shield_1/ene_shield_1") then
- spawn_shield_1(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_shield_1(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().shield_2 and self._unit:name() == Idstring("units/payday2/characters/ene_shield_2/ene_shield_2") then
- spawn_shield_2(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_shield_2(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().sniper_1 and self._unit:name() == Idstring("units/payday2/characters/ene_sniper_1/ene_sniper_1") then
- spawn_sniper_1(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_sniper_1(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().sniper_2 and self._unit:name() == Idstring("units/payday2/characters/ene_sniper_2/ene_sniper_2") then
- spawn_sniper_2(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_sniper_2(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().spook_1 and self._unit:name() == Idstring("units/payday2/characters/ene_spook_1/ene_spook_1") then
- spawn_spook_1(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_spook_1(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().swat_1 and self._unit:name() == Idstring("units/payday2/characters/ene_swat_1/ene_swat_1") then
- spawn_swat_1(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_swat_1(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().swat_2 and self._unit:name() == Idstring("units/payday2/characters/ene_swat_2/ene_swat_2") then
- spawn_swat_2(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_swat_2(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().swat_heavy_1 and self._unit:name() == Idstring("units/payday2/characters/ene_swat_heavy_1/ene_swat_heavy_1") then
- spawn_swat_heavy_1(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_swat_heavy_1(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- if not self._unit:base().tazer_1 and self._unit:name() == Idstring("units/payday2/characters/ene_tazer_1/ene_tazer_1") then
- spawn_tazer_1(Vector3(self._unit:position().x + (math.random(9,10) * 5), self._unit:position().y + (math.random(9,10) * 5), self._unit:position().z), self._unit:rotation())
- spawn_tazer_1(Vector3(self._unit:position().x + (math.random(3,5) * 3), self._unit:position().y + (math.random(3,5) * 3), self._unit:position().z), self._unit:rotation())
- end
- local result = _deadCop( self, ... )
- return result
- end
- end
- -- GOLDOZER BANK
- function find_computer()
- local units = World:find_units_quick( "all" )
- for i,unit in ipairs( units ) do
- if unit.interaction and unit:interaction() and unit:interaction().tweak_data == "computer_test" then
- return unit
- end
- end
- end
- function spawn_loot(type, _position, z_offset)
- local position = mvector3.copy(_position)
- if z_offset then mvector3.set_z(position, position.z + z_offset) end
- if Network:is_client() then
- managers.network:session():send_to_host( "server_drop_carry", type, managers.money:get_bag_value( type ), nil, nil, 0, position, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,0 ), 0 )
- else
- managers.player:server_drop_carry( type, managers.money:get_bag_value( type ), nil, nil, 0, position, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,0 ), 0 )
- end
- end
- function spawn(position, rotation)
- local unit_name = Idstring( "units/payday2/characters/ene_bulldozer_1/ene_bulldozer_1" )
- local spawn_ai = { init_state = "idle" }
- local unit = World:spawn_unit( unit_name, position, rotation )
- unit:base().made_of_gold = true
- unit:movement():set_character_anim_variables()
- unit:brain():set_spawn_ai( spawn_ai )
- unit:brain():set_active( true )
- end
- function spawn_cluster(position, num, cluster)
- for i=1,num do
- spawn(Vector3(position.x + (math.random() * cluster * 2 - cluster), position.y + (math.random() * cluster * 2 - cluster), position.z), Rotation( math.UP, math.random() * 360 ))
- end
- end
- _CopDamageDie = _CopDamageDie or CopDamage.die
- _modCopDamageDie = _modCopDamageDir or function( self, variant )
- if self._unit:base().made_of_gold then
- spawn_loot("gold", self._unit:position(), 120)
- end
- return _deadCop(self, variant)
- end
- _drillDone = _drillDone or Drill.done
- _modDrillDone = _modDrillDone or function(self)
- local result = _drillDone(self)
- if managers.job:current_level_id() == "branchbank" then
- local computer = find_computer()
- if computer and computer:position().x == -1281 then
- spawn_cluster(Vector3(-2068.93, 2197.47, 1.1), 3, 100)
- spawn_cluster(Vector3(-2222.62, 2285.03, 1.1), 3, 100)
- elseif computer and computer:position().x == -2920 then
- spawn_cluster(Vector3(-2246.11, 2061.04, 1.1), 3, 100)
- spawn_cluster(Vector3(-2175.62, 2285.41, 1.1), 3, 100)
- end
- Drill.done = _drillDone
- _drillDone = nil
- end
- return result
- end
- _deadCiv = _deadCiv or CivilianDamage.die
- _modDeadCiv = _modDeadCiv or function(self, ... )
- spawn(self._unit:position(), self._unit:rotation())
- local result = _deadCiv( self, ... )
- self._unit:set_slot( 0 )
- managers.network:session():send_to_peers_synched( "remove_unit", self._unit )
- return result
- end
- banktoggle = banktoggle or false
- function togglebank()
- if banktoggle then
- CopDamage.die = _CopDamageDie
- if _drillDone then Drill.done = _drillDone end
- CivilianDamage.die = _deadCiv
- banktoggle = false
- managers.hud:show_hint( { text = "Goldozer Bank Off" } )
- else
- CopDamage.die = _modCopDamageDie
- if _drillDone then Drill.done = _modDrillDone
- end
- CivilianDamage.die = _modDeadCiv
- banktoggle = true
- managers.hud:show_hint( { text = "Goldozer Bank On" } )
- end
- end
- -- MASK OFF
- faceoff = faceoff or function()
- managers.player:set_player_state( "throw_grenade" )
- show_mid_text("peek a boo...", "MASK OFF", 1.5 )
- end
- -- Bankbuster v2
- bankbuster = bankbuster or function()
- local depositboxes = {}
- local id
- for _,v in pairs(managers.interaction._interactive_objects) do
- if v.interaction then
- id = string.sub(v:interaction()._unit:name():t(), 1, 10)
- if id == "@ID7999172" or -- Harvest Bank
- id == "@IDe4bc870" or id == "@ID51da6d6" or id == "@ID8d8c766" or id == "@ID50aac55" or id == "@ID5dcd177" --Armoured Transport
- or id == "@IDe93c9b2" then -- GO Bank
- table.insert(depositboxes, v:interaction())
- end
- end
- end
- for _,v in pairs(depositboxes) do
- v:interact(managers.player:player_unit())
- end
- managers.hud:show_hint( { text = "pooooof-- deposits busted" } )
- end
- -- SPAWN GRENADE CASE ON PLAYER -- v9 perhaps
- -- SPAWN AMMO ON PLAYER
- giveammoto = giveammoto or function(id)
- local ammo_upgrade_lvl = managers.player:upgrade_level( "ammo_bag", "ammo_increase" )
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- if unit:network():peer():id() == id then
- local rot = managers.player:player_unit():rotation()
- if Network:is_client() then
- managers.network:session():send_to_host( "place_deployable_bag", "AmmoBagBase", unit:position(), rot, ammo_upgrade_lvl )
- else
- AmmoBagBase.spawn( unit:position(), rot, ammo_upgrade_lvl )
- end
- end
- end
- end
- end
- -- SPAWN MEDIKIT ON PLAYER
- givemedikito = givemedikito or function(id)
- local amount_upgrade_lvl = managers.player:upgrade_level( "doctor_bag", "amount_increase" )
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- if unit:network():peer():id() == id then
- local rot = managers.player:player_unit():rotation()
- if Network:is_client() then
- managers.network:session():send_to_host( "place_deployable_bag", "DoctorBagBase", unit:position(), rot, amount_upgrade_lvl )
- else
- DoctorBagBase.spawn( unit:position(), rot, amount_upgrade_lvl )
- end
- end
- end
- end
- end
- -- SPAWN TURRRETAMMO BAG (EXPLOSION) ON PLAYER HOST+CLIENT FRIENDLY
- giveexplosiontoc = giveexplosiontoc or function(id)
- local ammo_upgrade_lvl = managers.player:upgrade_level( "ammo_bag", "ammo_increase" )
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- if unit:network():peer():id() == id then
- local rot = managers.player:player_unit():rotation()
- if Network:is_client() then
- managers.network:session():send_to_host( "server_drop_carry", "ammo", managers.money:get_bag_value( "turret" ), nil, nil, 0, unit:position(), Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-70 ), 0 )
- else
- managers.network:session():send_to_host( "place_deployable_bag", "AmmoBagBase", unit:position(), rot, ammo_upgrade_lvl )
- end
- end
- end
- end
- end
- -- SPAWN MONEY BAG ON PLAYER (X-MAS SPECIAL EDITION)
- givemoneyto = givemoneyto or function(id)
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- if unit:network():peer():id() == id then
- if Network:is_client() then
- managers.network:session():send_to_host( "server_drop_carry", "money", managers.money:get_bag_value( "turret" ), nil, nil, 0, unit:position(), Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-50 ), 0 )
- else
- managers.player:server_drop_carry( "money", managers.money:get_bag_value( "turret" ), nil, nil, 0, unit:position(), Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-50 ), 0 )
- end
- end
- end
- end
- end
- -- SPAWN GOLD BAG ON PLAYER
- givegoldto = givegoldto or function(id)
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- if unit:network():peer():id() == id then
- if Network:is_client() then
- managers.network:session():send_to_host( "server_drop_carry", "gold", managers.money:get_bag_value( "gold" ), nil, nil, 0, unit:position(), Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,0 ), 0 )
- else
- managers.player:server_drop_carry( "gold", managers.money:get_bag_value( "gold" ), nil, nil, 0, unit:position(), Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,0 ), 0 )
- end
- end
- end
- end
- end
- -- GIVE GOLD BAG TO TEAM MEMBERS
- goldteam = goldteam or function()
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit:position()
- if Network:is_client() then
- managers.network:session():send_to_host( "server_drop_carry", "gold", managers.money:get_bag_value( "gold" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-70 ), 0 )
- else
- managers.player:server_drop_carry( "gold", managers.money:get_bag_value( "gold" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- end
- end
- end
- end
- -- GIVE MONEY BAG TO TEAM MEMBERS
- moneyteam = moneyteam or function()
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit:position()
- if Network:is_client() then
- managers.network:session():send_to_host( "server_drop_carry", "money", managers.money:get_bag_value( "turret" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- managers.network:session():send_to_host( "server_drop_carry", "money", managers.money:get_bag_value( "turret" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- managers.network:session():send_to_host( "server_drop_carry", "money", managers.money:get_bag_value( "turret" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- managers.network:session():send_to_host( "server_drop_carry", "money", managers.money:get_bag_value( "turret" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- managers.network:session():send_to_host( "server_drop_carry", "money", managers.money:get_bag_value( "turret" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- else
- managers.player:server_drop_carry( "money", managers.money:get_bag_value( "turret" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- managers.player:server_drop_carry( "money", managers.money:get_bag_value( "turret" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- managers.player:server_drop_carry( "money", managers.money:get_bag_value( "turret" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- managers.player:server_drop_carry( "money", managers.money:get_bag_value( "turret" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- managers.player:server_drop_carry( "money", managers.money:get_bag_value( "turret" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- end
- end
- end
- end
- -- DROP EXPLOSIVE BAGS ON TEAM MEMBERS
- demoteam = demoteam or function()
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit:position()
- if Network:is_client() then
- managers.network:session():send_to_host( "server_drop_carry", "ammo", managers.money:get_bag_value( "money" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- managers.network:session():send_to_host( "server_drop_carry", "ammo", managers.money:get_bag_value( "money" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- managers.network:session():send_to_host( "server_drop_carry", "ammo", managers.money:get_bag_value( "money" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- else
- managers.player:server_drop_carry( "ammo", managers.money:get_bag_value( "money" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- managers.player:server_drop_carry( "ammo", managers.money:get_bag_value( "money" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- managers.player:server_drop_carry( "ammo", managers.money:get_bag_value( "money" ), nil, nil, 0, unit, Rotation( math.UP, math.random() * 360 ), Vector3( 0,0,-100 ), 0 )
- end
- end
- end
- end
- -- CHANGE TEAM MEMBERS NAMES
- teamnoob = teamnoob or function()
- local i = 1
- for pl_key, pl_record in pairs( managers.groupai:state():all_player_criminals() ) do
- if pl_record.status ~= "dead" then
- local unit = managers.groupai:state():all_player_criminals()[ pl_key ].unit
- local peer = managers.network:session():peer( i )
- peer:set_profile( 1 )
- peer:set_name( 'Noob' )
- end
- i = i + 1
- end
- end
- stat1 = stat1 or function()
- local peer = managers.network:session():peer( 1 )
- peer:set_statistics( 666,666,666,6,66 )
- end
- stat2 = stat2 or function()
- local peer = managers.network:session():peer( 2 )
- peer:set_statistics( 666,666,666,6,66 )
- end
- stat3 = stat3 or function()
- local peer = managers.network:session():peer( 3 )
- peer:set_statistics( 666,666,666,6,66 )
- end
- stat4 = stat4 or function()
- local peer = managers.network:session():peer( 4 )
- peer:set_statistics( 666,666,666,6,66 )
- end
- syncreleaseply1 = syncreleaseply1 or function()
- if isHost() then
- IngameWaitingForRespawnState.request_player_spawn( 1 )
- else
- show_mid_text("..n000000b", "HOST ONLY", 1.5 )
- end
- end
- syncreleaseply2 = syncreleaseply2 or function()
- if isHost() then
- IngameWaitingForRespawnState.request_player_spawn( 2 )
- else
- show_mid_text("..n000000b", "HOST ONLY", 1.5 )
- end
- end
- syncreleaseply3 = syncreleaseply3 or function()
- if isHost() then
- IngameWaitingForRespawnState.request_player_spawn( 3 )
- else
- show_mid_text("..n000000b", "HOST ONLY", 1.5 )
- end
- end
- syncreleaseply4 = syncreleaseply4 or function()
- if isHost() then
- IngameWaitingForRespawnState.request_player_spawn( 4 )
- else
- show_mid_text("..n000000b", "HOST ONLY", 1.5 )
- end
- end
- releaseteam = releaseteam or function()
- syncreleaseply1()
- syncreleaseply2()
- syncreleaseply3()
- syncreleaseply4()
- end
- --Instant Release from custody
- --caution do not alter, use as intended
- --please wait 5 seconds after death before using... by OJ
- releaseme = releaseme or function()
- if game_state_machine:current_state_name() == "ingame_waiting_for_respawn" and not alive(managers.player:player_unit()) then
- IngameWaitingForRespawnState:_begin_game_enter_transition()
- end
- end
- sendalltojail = sendalltojail or function(id)
- for _,u_data in pairs(managers.groupai:state():all_player_criminals()) do
- local player = u_data.unit
- local player_id = player:network():peer():id()
- if id == player_id or id == -1 then
- player:network():send("sync_player_movement_state", "dead", 0, player:id() )
- --player:network():send("set_health", 0)
- player:network():send_to_unit( { "spawn_dropin_penalty", true, nil, 0, nil, nil } )
- managers.groupai:state():on_player_criminal_death( player:network():peer():id() )
- end
- end
- end
- spraydance = spraydance or function()
- --INSERT HACK HERE
- end
- -- OPEN ALL DOORS
- picklockst = picklockst or function()
- local locksmith = {}
- local id
- for _,v in pairs(managers.interaction._interactive_objects) do
- if v.interaction then
- id = string.sub(v:interaction()._unit:name():t(), 1, 10)
- if id == "@IDe653b95"
- or id == "@ID18a7cac"
- or id == "@IDa25106d"
- or id == "@IDb025e83"
- or id == "@ID08a3353"
- or id == "@ID851f323"
- or id == "@ID8e70272"
- or id == "@ID1d283db"
- or id == "@ID5a95fe8"
- or id == "@ID622b34c"
- or id == "@ID1e56fe5"
- or id == "@IDa096513"
- or id == "@IDcfb8d38"
- or id == "@IDb68beff"
- or id == "@IDcfb8d38"
- or id == "@ID31ccfa0"
- or id == "@IDe653b95"
- or id == "@IDd40d72e" then
- table.insert(locksmith, v:interaction())
- end
- end
- end
- for _,v in pairs(locksmith) do
- v:interact(managers.player:player_unit())
- end
- show_mid_text("...open sesame", "Pooooof", 0.5 )
- end
- -- HACK COMPUTERS AND KEYPADS
- instahackzt = instahackzt or function()
- local h4x0r = {}
- local id
- for _,v in pairs(managers.interaction._interactive_objects) do
- if v.interaction then
- id = string.sub(v:interaction()._unit:name():t(), 1, 10)
- if id == "@ID58cb6c4"
- or id == "@ID2721ad0" then
- table.insert(h4x0r, v:interaction())
- end
- end
- end
- for _,v in pairs(h4x0r) do
- v:interact(managers.player:player_unit())
- end
- show_mid_text("...lua hacked injected", "Pooooof", 0.5 )
- end
- -- USE KEYCARD
- usekeycardt = usekeycardt or function()
- local usekey = {}
- local id
- for _,v in pairs(managers.interaction._interactive_objects) do
- if v.interaction then
- id = string.sub(v:interaction()._unit:name():t(), 1, 10)
- if id == "@ID15d846f"
- or id == "@ID2a72308" then
- table.insert(usekey, v:interaction())
- end
- end
- end
- for _,v in pairs(usekey) do
- v:interact(managers.player:player_unit())
- end
- show_mid_text("...keycard(s) remote swiped", "Pooooof", 0.5 )
- end
- -- EL WANDO MAGICO
- minormagict = minormagict or function()
- local apprentice = {}
- local id
- for _,v in pairs(managers.interaction._interactive_objects) do
- if v.interaction then
- id = string.sub(v:interaction()._unit:name():t(), 1, 10)
- if id == "@IDc9609ee"
- or id == "@IDe5cdb6f"
- or id == "@IDb527421"
- or id == "@ID6dbc2f1"
- or id == "@ID6a55816"
- or id == "@ID5a95fe8"
- or id == "@IDd904ebd"
- or id == "@ID9ed5ee9"
- or id == "@IDc9b068a"
- or id == "@ID9c3047f"
- or id == "@ID3b0947a"
- or id == "@IDfac10a8"
- or id == "@ID6c5d032"
- or id == "@IDac5a9a0" then
- table.insert(apprentice, v:interaction())
- end
- end
- end
- for _,v in pairs(apprentice) do
- v:interact(managers.player:player_unit())
- end
- show_mid_text("...It's a kind of magic", "Pooooof", 0.5 )
- end
- -- BOARD UP WINDOWS
- instaboardst = instaboardst or function()
- local boardwin = {}
- local id
- for _,v in pairs(managers.interaction._interactive_objects) do
- if v.interaction then
- id = string.sub(v:interaction()._unit:name():t(), 1, 10)
- if id == "@IDb71bf75"
- or id == "@IDb71bf75"
- or id == "@IDb55faf1"
- or id == "@IDb55faf1"
- or id == "@ID4738b25"
- or id == "@IDb524e47" then
- table.insert(boardwin, v:interaction())
- end
- end
- end
- for _,v in pairs(boardwin) do
- v:interact(managers.player:player_unit())
- end
- show_mid_text("...let there be... .hmmm darkness", "Pooooof", 0.5 )
- end
- -- ANSWER PHONECALLS
- callcentert = callcentert or function()
- local phoney = {}
- local id
- for _,v in pairs(managers.interaction._interactive_objects) do
- if v.interaction then
- id = string.sub(v:interaction()._unit:name():t(), 1, 10)
- if id == "@IDd5e1a53"
- or id == "@ID6dbc2f1"
- or id == "@IDba2c036" then
- table.insert(phoney, v:interaction())
- end
- end
- end
- for _,v in pairs(phoney) do
- v:interact(managers.player:player_unit())
- end
- show_mid_text("...phones and pagers dealt with", "Pooooof", 0.5 )
- end
- end
- getpatht = getpatht or function()
- managers.player:carry_stacker() -- BAGPACKER
- local ontrack = {}
- local id
- for _,v in pairs(managers.interaction._interactive_objects) do
- if v.interaction then
- id = string.sub(v:interaction()._unit:name():t(), 1, 10)
- if id == "@ID99aa0ad"
- or id == "@ID51001ab"
- or id == "@IDca8a8a2"
- or id == "@ID51001ab"
- or id == "@ID03777a0"
- or id == "@ID4a6b073"
- or id == "@ID7883aa4"
- or id == "@IDeee53eb"
- or id == "@ID1a1c9b0"
- or id == "@IDda87b02"
- or id == "@ID9140188"
- or id == "@ID15d846f"
- or id == "@ID4e2b16f"
- or id == "@IDf1461ef"
- or id == "@ID7dc5f75"
- or id == "@IDd8b036e"
- or id == "@ID9140188"
- or id == "@ID39a5689"
- or id == "@ID22c41a3"
- or id == "@IDdf59d98"
- or id == "@ID5a95fe8"
- or id == "@ID6a55816"
- or id == "@IDf105b35"
- or id == "@IDd8b036e"
- or id == "@ID64b82ec"
- or id == "@ID1f6a50d"
- or id == "@ID077636c"
- or id == "@ID6dbc2f1"
- or id == "@IDdd16274"
- or id == "@ID136f21b"
- or id == "@ID2be5897"
- or id == "@IDc54c876"
- or id == "@IDdb2e8d0"
- or id == "@ID2a72308"
- or id == "@IDd5e1a53"
- or id == "@ID853940b"
- or id == "@IDcfbdf01"
- or id == "@IDbb82cfc"
- or id == "@ID54e8d78"
- or id == "@IDd90bf4a"
- or id == "@ID0275b3e"
- or id == "@ID08a6323"
- or id == "@IDdd0578d"
- or id == "@ID4ba585b"
- or id == "@IDe258187"
- or id == "@ID5422d8b"
- or id == "@IDe6cb9c8" then
- table.insert(ontrack, v:interaction())
- end
- end
- end
- for _,v in pairs(ontrack) do
- v:interact(managers.player:player_unit())
- end
- show_mid_text("...and the mission continues", "Pooooof", 0.5 )
- end
- -- PLACE DRILL ON DOORS / RESTART DRILL
- thrilldrillt = thrilldrillt or function()
- local drilldo = {} --interacting while looping invalidates the table, so we have to build a list
- local id
- for _,v in pairs(managers.interaction._interactive_objects) do
- if v.interaction then
- id = string.sub(v:interaction()._unit:name():t(), 1, 10)
- if id == "@ID584bea0"
- or id == "@ID1f6a50d"
- or id == "@ID51001ab"
- or id == "@IDf594e56" then
- table.insert(drilldo, v:interaction())
- end
- end
- end
- for _,v in pairs(drilldo) do
- v:interact(managers.player:player_unit())
- end
- show_mid_text("...all doors drilling", "Pooooof", 0.5 )
- end
- function player_name(id)
- if managers.platform:presence() ~= "Playing" then
- return ""
- end
- for _,data in pairs( managers.groupai:state():all_player_criminals() ) do
- local unit = data.unit
- if unit:network():peer():id() == id then
- return unit:base():nick_name()
- end
- end
- return ""
- end
- callrainmenu = callrainmenu or function()
- dofiles("trainer/assets/rainmenu.lua")
- end
- crapout = crapout or function()
- dofiles("trainer/assets/trashit.lua")
- end
- lockmeup = lockmeup or function()
- dofiles("trainer/assets/jailme.lua")
- end
- -------------------------------
- -- MENU CONTENT --
- -------------------------------
- calltrollrootmenuo = calltrollmenuo or function()
- openmenu(trollmenuo)
- end
- calltrollrootmenui = calltrollrootmenui or function()
- openmenu(trollmenui)
- end
- calltrollspoofmenu2 = calltrollspoofmenu2 or function()
- openmenu(spoofmenu2)
- end
- calltrollspoofmenu3 = calltrollspoofmenu3 or function()
- openmenu(spoofmenu3)
- end
- calltrollspoofmenu4 = calltrollspoofmenu4 or function()
- openmenu(spoofmenu4)
- end
- calltrollspoofmenu5 = calltrollspoofmenu5 or function()
- openmenu(spoofmenu5)
- end
- callsyncmainmenu = callsyncmainmenu or function()
- openmenu(syncpmenu)
- end
- callpstatemenu = callpstatemenu or function()
- openmenu(pstatemenu)
- end
- callsync1menu = callsync1menu or function()
- openmenu(syncp1menu)
- end
- callsync2menu = callsync2menu or function()
- openmenu(syncp2menu)
- end
- callsync3menu = callsync3menu or function()
- openmenu(syncp3menu)
- end
- callsync4menu = callsync4menu or function()
- openmenu(syncp4menu)
- end
- -- PLAYER STATE MENU INGAME
- pstateopt = pstateopt or {
- { text = "Back", callback = calltrollrootmenui },
- { text = "", is_cancel_button = true},
- { text = "Clean", callback = stateclean },
- { text = "Tased", callback = statetased },
- { text = "Normal", callback = statenorm },
- { text = "Cuffed", callback = statecuffs },
- { text = "Bleed Out", callback = stateblood },
- { text = "Incapacitated", callback = stateinca },
- {},
- { text = "Spoof level to 1", callback = selflevel1 },
- { text = "Spoof level to 100", callback = selflevel100 },
- { text = "Spoof level to 255", callback = selflevel255 },
- {},
- { text = "Release me from jail", callback = releaseme },
- { text = "Throw my ass in jail", callback = lockmeup },
- }
- pstatemenu = pstatemenu or SimpleMenu:new("MESS WITH SELF", "fake death, bleed out bonanza or getouttajail free card",pstateopt)
- -- SYNC PLAYER 1 STATE
- syncp1opt = {
- { text = "Back", callback = callsyncmainmenu },
- { text = "", is_cancel_button = true},
- { text = "Cuffs", callback = syncstatecuffs, data = 1 },
- { text = "Tased", callback = syncstatetased, data = 1 },
- { text = "Mask on", callback = syncstatestandard, data = 1 },
- { text = "Mask off", callback = syncstateclean, data = 1 },
- { text = "Bleed Out", callback = syncstatebleed_out, data = 1 },
- { text = "Incapacitated", callback = syncstateincapacitated, data = 1 },
- {},
- { text = "Switch switch boom CTD (HOST)", callback = ctdply, data = 1 }, -- dont tell how if changed please, also its unstable be warned
- { text = "Release player from jail (HOST)", callback = syncreleaseply1 },
- { text = "Throw player in jail (HOST)", callback = sendalltojail, data = 1 },
- { text = "Change final stats to evil", callback = stat1 },
- { text = "Teleport to player", callback = teleporttoply, data = 1 },
- { text = "Fus ro dah!", callback = fusrodah1 },
- {},
- { text = "Set player level to 1", callback = ply1level1 },
- { text = "Set player level to 100", callback = ply1level100 },
- { text = "Set player level to 255", callback = ply1level255 },
- {},
- { text = "Give him grenade case (HOST)", callback = givenadesto1 },
- { text = "Give him ammo bag", callback = giveammoto, data = 1 },
- { text = "Give him medikit", callback = givemedikito, data = 1 },
- {},
- { text = "Force carry engine bag (2nd time blocks carry)", callback = syncforceengine, data = 1 },
- { text = "Plant gold bag on him (HOST)", callback = givegoldto, data = 1 },
- { text = "Give him x-mas gift", callback = givemoneyto, data = 1 },
- { text = "Betty bomb him", callback = giveexplosiontoc, data = 1 },
- { text = "Go directly to jail (NOT WORKING YET)", callback = syncplyjail1 },
- { text = "Remove player gear (NOT WORKING YET)", callback = syncremovegear1 },
- }
- syncp1menu = SimpleMenu:new("MESS WITH "..player_name(1).."", "..choose how to troll",syncp1opt)
- -- SYNC PLAYER 2 STATE
- syncp2opt = {
- { text = "Back", callback = callsyncmainmenu },
- { text = "", is_cancel_button = true},
- { text = "Cuffs", callback = syncstatecuffs, data = 2 },
- { text = "Tased", callback = syncstatetased, data = 2 },
- { text = "Mask on", callback = syncstatestandard, data = 2 },
- { text = "Mask off", callback = syncstateclean, data = 2 },
- { text = "Bleed Out", callback = syncstatebleed_out, data = 2 },
- { text = "Incapacitated", callback = syncstateincapacitated, data = 2 },
- {},
- { text = "Switch switch boom CTD (HOST)", callback = ctdply, data = 2 }, -- dont tell how if changed please, also its unstable be warned
- { text = "Release player from jail (HOST)", callback = syncreleaseply2 },
- { text = "Throw player in jail (HOST)", callback = sendalltojail, data = 2 },
- { text = "Change final stats to evil", callback = stat2 },
- { text = "Teleport to player", callback = teleporttoply, data = 2 },
- { text = "Fus ro dah!", callback = fusrodah2 },
- {},
- { text = "Set player level to 1", callback = ply2level1 },
- { text = "Set player level to 100", callback = ply2level100 },
- { text = "Set player level to 255", callback = ply2level255 },
- {},
- { text = "Give him grenade case (HOST)", callback = givenadesto2 },
- { text = "Give him ammo bag", callback = giveammoto, data = 2 },
- { text = "Give him medikit", callback = givemedikito, data = 2 },
- {},
- { text = "Force carry engine bag (2nd time blocks carry)", callback = syncforceengine, data = 2 },
- { text = "Plant gold bag on him", callback = givegoldto, data = 2 },
- { text = "Give him x-mas gift", callback = givemoneyto, data = 2 },
- { text = "Betty bomb him", callback = giveexplosiontoc, data = 2 },
- { text = "Go directly to jail (NOT WORKING YET)", callback = syncplyjail2 },
- { text = "Remove player gear (NOT WORKING YET)", callback = syncremovegear2 },
- }
- syncp2menu = SimpleMenu:new("MESS WITH "..player_name(2).."", "..choose how to troll",syncp2opt)
- -- SYNC PLAYER 3 STATE
- syncp3opt = {
- { text = "Back", callback = callsyncmainmenu },
- { text = "", is_cancel_button = true},
- { text = "Cuffs", callback = syncstatecuffs, data = 3 },
- { text = "Tased", callback = syncstatetased, data = 3 },
- { text = "Mask on", callback = syncstatestandard, data = 3 },
- { text = "Mask off", callback = syncstateclean, data = 3 },
- { text = "Bleed Out", callback = syncstatebleed_out, data = 3 },
- { text = "Incapacitated", callback = syncstateincapacitated, data = 3 },
- {},
- { text = "Switch switch boom CTD (HOST)", callback = ctdply, data = 3 }, -- dont tell how if changed please, also its unstable be warned
- { text = "Release player from jail (HOST)", callback = syncreleaseply3 },
- { text = "Throw player in jail (HOST)", callback = sendalltojail, data = 3 },
- { text = "Change final stats to evil", callback = stat3 },
- { text = "Teleport to player", callback = teleporttoply, data = 3 },
- { text = "Fus ro dah!", callback = fusrodah3 },
- {},
- { text = "Set player level to 1", callback = ply3level1 },
- { text = "Set player level to 100", callback = ply3level100 },
- { text = "Set player level to 255", callback = ply3level255 },
- {},
- { text = "Give him grenade case (HOST)", callback = givenadesto3 },
- { text = "Give him ammo bag", callback = giveammoto, data = 3 },
- { text = "Give him medikit", callback = givemedikito, data = 3 },
- {},
- { text = "Force carry engine bag (2nd time blocks carry)", callback = syncforceengine, data = 3 },
- { text = "Plant gold bag on him", callback = givegoldto, data = 3 },
- { text = "Give him x-mas gift", callback = givemoneyto, data = 3 },
- { text = "Betty bomb him", callback = giveexplosiontoc, data = 3 },
- { text = "Go directly to jail (NOT WORKING YET)", callback = syncplyjail3 },
- { text = "Remove player gear (NOT WORKING YET)", callback = syncremovegear3 },
- }
- syncp3menu = SimpleMenu:new("MESS WITH "..player_name(3).."", "..choose how to troll",syncp3opt)
- -- SYNC PLAYER 4 STATE
- syncp4opt = {
- { text = "Back", callback = callsyncmainmenu },
- { text = "", is_cancel_button = true},
- { text = "Cuffs", callback = syncstatecuffs, data = 4 },
- { text = "Tased", callback = syncstatetased, data = 4 },
- { text = "Mask on", callback = syncstatestandard, data = 4 },
- { text = "Mask off", callback = syncstateclean, data = 4 },
- { text = "Bleed Out", callback = syncstatebleed_out, data = 4 },
- { text = "Incapacitated", callback = syncstateincapacitated, data = 4 },
- {},
- { text = "Switch switch boom CTD (HOST)", callback = ctdply, data = 4 }, -- dont tell how if changed please, also its unstable be warned
- { text = "Release player from jail (HOST)", callback = syncreleaseply4 },
- { text = "Throw player in jail (HOST)", callback = sendalltojail, data = 4 },
- { text = "Change final stats to evil", callback = stat4 },
- { text = "Teleport to player", callback = teleporttoply, data = 4 },
- { text = "Fus ro dah!", callback = fusrodah4 },
- {},
- { text = "Set player level to 1", callback = ply4level1 },
- { text = "Set player level to 100", callback = ply4level100 },
- { text = "Set player level to 255", callback = ply4level255 },
- {},
- { text = "Give him grenade case (HOST)", callback = givenadesto4 },
- { text = "Give him ammo bag", callback = giveammoto, data = 4 },
- { text = "Give him medikit", callback = givemedikito, data = 4 },
- {},
- { text = "Force carry engine bag (2nd time blocks carry)", callback = syncforceengine, data = 4 },
- { text = "Plant gold bag on him", callback = givegoldto, data = 4 },
- { text = "Give him x-mas gift", callback = givemoneyto, data = 4 },
- { text = "Betty bomb him", callback = giveexplosiontoc, data = 4 },
- { text = "Go directly to jail (NOT WORKING YET)", callback = syncplyjail4 },
- { text = "Remove player gear (NOT WORKING YET)", callback = syncremovegear4 },
- }
- syncp4menu = SimpleMenu:new("MESS WITH "..player_name(4).."", "..choose how to troll",syncp4opt)
- syncpmopt = {
- { text = "Back", callback = calltrollrootmenui },
- { text = "", is_cancel_button = true},
- { text = "Cuff all players", callback = synccuffall },
- { text = "Tase all players", callback = synctaseall },
- { text = "Incapacitate all players", callback = syncincaall },
- { text = "Bleed out all players", callback = syncbleedall },
- {},
- { text = "Clean Team, CTD all (HOST)", callback = ctdteam },
- { text = "Release all teammates from jail", callback = releaseteam },
- { text = "Throw all teammates in jail", callback = sendalltojail, data = -1 },
- { text = "Team noob, changes names to noob (HOST)", callback = teamnoob },
- {},
- { text = "Noob team, all teammembers level 1", callback = teamlvl1 },
- { text = "Pro team, all teammembers level 100", callback = teamlvl100 },
- { text = "Elite team, all teammembers level 255", callback = teamlvl255 },
- {},
- { text = "Golden teambag, drop gold on team", callback = goldteam },
- { text = "Santa flyby, drop moneybag on team", callback = moneyteam },
- { text = "Demolition team, drop bombs on team", callback = demoteam },
- {},
- { text = "Mess with "..player_name(4).."", callback = callsync4menu },
- { text = "Mess with "..player_name(3).."", callback = callsync3menu },
- { text = "Mess with "..player_name(2).."", callback = callsync2menu },
- { text = "Mess with "..player_name(1).."", callback = callsync1menu },
- {},
- { text = "Identify players", callback = callsyncident }, -- DEPRECATED
- }
- syncpmenu = SimpleMenu:new("CHOOSE TARGET", "...which player to irritate",syncpmopt)
- -- SPOOF NAME PAGE 5
- spoofopt5 = {
- { text = "Page 1", callback = calltrollrootmenuo },
- { text = "Page 2", callback = calltrollspoofmenu2 },
- { text = "Page 3", callback = calltrollspoofmenu3 },
- { text = "Page 4", callback = calltrollspoofmenu4 },
- { text = "", is_cancel_button = true},
- { text = "Pirate Captain", callback = PirateCaptain },
- { text = "Baddog-11", callback = Baddog },
- { text = "Axe Wound", callback = AxeWound },
- { text = "\[TEC\] Anon", callback = nametec },
- { text = "Iam Cornholio", callback = cornholio },
- { text = "Hax0r", callback = Hax0r },
- {},
- { text = "Smelly Pirate Captain", callback = spoof5 },
- { text = "Demonic Pirate Captain", callback = DemonicPirateCaptain },
- { text = "Pirate Pirate Captain", callback = PiratePirateCaptain },
- { text = "Captain Pirate", callback = CaptainPirate },
- { text = "Pirate Perfection Fan#1", callback = PiratePerfectionFan },
- }
- spoofmenu5 = spoofmenu5 or SimpleMenu:new("Specialists Menu", ".. dafuq are you doing here????",spoofopt5)
- -- SPOOF NAME PAGE 4
- spoofopt4 = {
- { text = "Page 1", callback = calltrollrootmenuo },
- { text = "Page 2", callback = calltrollspoofmenu2 },
- { text = "Page 3", callback = calltrollspoofmenu3 },
- { text = "Page 5", callback = calltrollspoofmenu5 },
- { text = "", is_cancel_button = true},
- { text = "Slobodan Milosevic", callback = namesec9 },
- { text = "Osama Bin Laden", callback = namesec8 },
- { text = "Saddam Hussein", callback = namesec7 },
- { text = "Harald Bluetooth", callback = namesec13 },
- { text = "Benito Mussolini", callback = namesec11 },
- { text = "Mao Tse-Tung", callback = namesec4 },
- { text = "Vladimir Lenin", callback = namesec5 },
- { text = "Vladimir Putin", callback = namesec3 },
- { text = "Joseph Stalin", callback = namesec2 },
- { text = "Motherfucker", callback = namesec16 },
- { text = "Bitchslapper", callback = namesec17 },
- { text = "Adolf Hitler", callback = namesec1 },
- { text = "Kim Jong Il", callback = namesec6 },
- { text = "Asskicker", callback = namesec15 },
- { text = "Zomboss", callback = namesec20 },
- { text = "Copkiller", callback = namesec18 },
- { text = "Idi Amin", callback = namesec10 },
- { text = "Hirohito", callback = namesec14 },
- { text = "Pol Pot", callback = namesec12 },
- { text = "v00d00", callback = namesec19 },
- }
- spoofmenu4 = spoofmenu4 or SimpleMenu:new("SECRET MENU", ".. dafuq are you doing here????",spoofopt4)
- -- SPOOF NAME PAGE 3
- spoofopt3 = {
- { text = "Page 1", callback = calltrollrootmenuo },
- { text = "Page 2", callback = calltrollspoofmenu2 },
- { text = "Page 4", callback = calltrollspoofmenu4 },
- { text = "Page 5", callback = calltrollspoofmenu5 },
- { text = "", is_cancel_button = true},
- { text = "Generous George", callback = spoof31 },
- { text = "Phillip Oliver Holz", callback = spoof25 },
- { text = "Wilma Fingerdoo", callback = spoof24 },
- { text = "Cheating allowed", callback = spoof27 },
- { text = "Ivanna Humpalot", callback = spoof18 },
- { text = "Ol' Dirty Bastard", callback = spoof26 },
- { text = "Newbie Booster", callback = spoof33 },
- { text = "Seymore Butts", callback = spoof19 },
- { text = "Homer Sexual", callback = spoof16 },
- { text = "Justin Heranus", callback = spoof20 },
- { text = "Cheaters 'r us", callback = spoof29 },
- { text = "Carrie Mysac", callback = spoof21 },
- { text = "Mike Oxsbig", callback = spoof23 },
- { text = "Rusty Kuntz", callback = spoof14 },
- { text = "Slynderdale", callback = namesephi },
- { text = "Clee Torres", callback = spoof15 },
- { text = "Max Payne", callback = namemaxp },
- { text = "Sam Fisher", callback = namesamf },
- { text = "Rockefella", callback = spoof30 },
- { text = "I. C. Kuntz", callback = spoof17 },
- { text = "Lou Scunt", callback = spoof22 },
- { text = "Noob", callback = spoof32 },
- }
- spoofmenu3 = spoofmenu3 or SimpleMenu:new("SPOOF NAME Page 3", ".. or how about one of these names\?",spoofopt3)
- -- SPOOF NAME PAGE 2
- spoofopt2 = {
- { text = "Page 1", callback = calltrollrootmenuo },
- { text = "Page 3", callback = calltrollspoofmenu3 },
- { text = "Page 4", callback = calltrollspoofmenu4 },
- { text = "Page 5", callback = calltrollspoofmenu5 },
- { text = "", is_cancel_button = true},
- { text = "Guybrush Threepwood", callback = namewood },
- { text = "Vaas Montenegro", callback = namevaas },
- { text = "Gordon Freeman", callback = namegordon },
- { text = "Nathan Drake", callback = namenathan },
- { text = "I love cheats", callback = spoof28 },
- { text = "Master Chief", callback = namemaster },
- { text = "Sandy Cervix", callback = spoof11 },
- { text = "Phillip Purass", callback = spoof10 },
- { text = "Duke Nukem", callback = spoof3 },
- { text = "Solid Snake", callback = namesolid },
- { text = "Spongebob", callback = spoof12 },
- { text = "Ran Sidass", callback = spoof8 },
- { text = "Jack Goff", callback = spoof2 },
- { text = "madMAX", callback = spoof34 },
- { text = "Douglby", callback = spoof1 },
- { text = "Bender", callback = spoof13 },
- { text = "Invisible man", callback = nameinvis },
- { text = "Rubber man", callback = namerubber },
- { text = "Spiderman", callback = namespider },
- { text = "Uraz88", callback = namesuper },
- { text = "Baldwin", callback = namebat },
- }
- spoofmenu2 = spoofmenu2 or SimpleMenu:new("SPOOF NAME Page 2", ".. or this name better\?",spoofopt2)
- -- ROOT MENU OUTGAME
- troopto = {
- { text = "Page 2", callback = calltrollspoofmenu2 },
- { text = "Page 3", callback = calltrollspoofmenu3 },
- { text = "Page 4", callback = calltrollspoofmenu4 },
- { text = "Page 5", callback = calltrollspoofmenu5 },
- { text = "", is_cancel_button = true},
- { text = "Kenneth The Janitor", callback = killkenny },
- { text = "OVERKILL_Andreas", callback = nameandy },
- { text = "OVERKILL_Viktor", callback = namevicky },
- { text = "OVERKILL_Per_J", callback = namepearj },
- { text = "OVERKILL_Almir", callback = namealmighty },
- { text = "OVERKILL BO", callback = bobo },
- { text = "GurillaOverkilla", callback = nameape },
- { text = "SimonViklund", callback = namesimon },
- { text = "CaretCaret", callback = namecaret },
- { text = "Overkillja", callback = namekillja },
- { text = "locust9", callback = festoriginal },
- { text = "Pastej", callback = namepastej },
- {},
- { text = "The Grim Reaper", callback = namesissy2 },
- { text = "Buster Hyman", callback = spoof9 },
- { text = "Alotta Fagina", callback = spoof6 },
- { text = "Harry P. Ness", callback = spoof7 },
- { text = "Master Bates", callback = namebates },
- { text = "King Nothing", callback = namesissy1 },
- { text = "Mike Litoris", callback = spoof4 },
- { text = "RoboCop", callback = namerobo },
- }
- -- ROOT MENU INGAME
- troopti = trooti or {
- { text = "Release all teammates from jail", callback = releaseteam },
- { text = "Mess with other players \[menu\]", callback = callsyncmainmenu },
- { text = "Mess with self \[menu\]", callback = callpstatemenu },
- { text = "Make it rain \[menu\]", callback = callrainmenu },
- { text = "", is_cancel_button = true},
- {},
- { text = "One cop die, two new spawns \[HOST\]", callback = onetotwo },
- { text = "Dead cops turn to bulldozers", callback = bullcop },
- { text = "Electric blood boogie : toggle", callback = spraydance },
- {},
- { text = "Mission manipulator get item/continue mission", callback = getpatht },
- { text = "Drill manipulator start/restart drill", callback = thrilldrillt },
- { text = "Prevent wait for players at start", callback = dontwait },
- { text = "Open all bank deposit boxes", callback = bankbuster },
- { text = "Apocalypse : Kill 'em all", callback = apocalypse },
- { text = "Board up all windows", callback = instaboardst },
- { text = "Phone calls rerouted", callback = callcentert },
- { text = "Take mask off again", callback = faceoff },
- { text = "Free civilian killing", callback = freekill },
- { text = "Doors etc opened", callback = picklockst },
- { text = "Computer h4X0r", callback = instahackzt },
- { text = "Trash all bags", callback = crapout },
- { text = "Use keycard", callback = usekeycardt },
- { text = "Magic wand" , callback = minormagict },
- { text = "Prevent pause from player drop-in", callback = stoppause }, -- MOVED TO PERSIST
- }
- -- ROOT MENU OUTGAME
- if not trollmenuo then
- trollmenuo = trollmenuo or SimpleMenu:new("Troll Menu", "..troll as your favorite hero", troopto)
- end
- -- ROOT MENU INGAME
- if not trollmenui then
- trollmenui = trollmenui or SimpleMenu:new("Troll menu", "Carrot/stick some noobs..", troopti)
- end
- -- SHOW INGAME/OUTGAME MENU
- if not inGame() then
- trollmenuo:show()
- else
- trollmenui:show()
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement