• Godmode in a specified space
    5 replies, posted
Oh hello there, i've been trying to make a little script that toggles GodMode on a player if the player is located in a specified space, like the spawn on flatgrass. Can anybody make a fast script? I believe its quite easy, but i am not thinking the right way. You would be my hero.
I could actually use this too if this would be made :D I'm going to learn lua further soon, cuz I took a long ass break and I lost alot of the knowledge =) So yeah, this could be handy :p
[code] Next = 0; local meta = FindMetaTable( "Player" ); function meta:IsInBox( min, max ) local Result = ents.FindInBox( min, max ); for k,v in pairs( Result ) do if( v && ValidEntity( v ) && v:IsPlayer() ) then return true; else return false; end end end function Check() if( CurTime() >= Next ) then for k,v in pairs( player.GetAll() ) do if( ValidEntity( v ) ) then if( v:IsInBox( Vector( INSERT X,Y,Z ), Vector( INSERT X,Y,Z ) ) ) then v:SetNWBool( "TakeDamage", false ); else v:SetNWBool( "TakeDamage", true ); end end end Next = CurTime() + 1; end end hook.Add("Think", "Check", Check) function playershouldtakedamage(victim, attacker) if( victim:GetNWBool( "TakeDamage" ) == false ) then return false; end end hook.Add( "PlayerShouldTakeDamage", "playershouldtakedamage", playershouldtakedamage) [/code] There ya go, not sure how efficient this script is or anything when there's like 30 players, but I guess you'll find out. :P Save as godmode.lua inside garrysmod/lua/autorun/server, if the folders doesn't exist, just create them. All you have to do it put in the 2 vectors.
how do I find the vectors? (X,Y,Z)
In the console, type [code]getpos[/code]
Thanks Jamie
Sorry, you need to Log In to post a reply to this thread.