Archived copy of warcraft-source.com, the Warcraft: Source (WCS) forum (2007–2011), rebuilt from the Internet Archive by wc3mods.net. This page was captured on 2010-04-12 (original capture). Home · Forum · All archived topics · Downloads

Author Topic: Spawn Protection Script  (Read 194 times)

Offline Azn4Life

  • Level 4 Intermediate
  • ****
  • Posts: 94
  • A stab in the back is all it takes...
Spawn Protection Script
« on: June 25, 2008, 04:15:01 AM »
Hi all i run a wcs zombie server and i have found a spawn protection script which i have edited to fit my server but, Im having troubles making it work (2 bugs).

Code: (eventscripts) [Select]
block load
{   
    es_xsetinfo spawn_invis_time 15 //10 second delay by default, change to whatever you desire
    es_xsetinfo primary weapon_mp5 //change primary weapon here. use full weapon code: weapon_awp or weapon_tmp or weapon_m249 etc
    es_xsetinfo secondary weapon_deagle //change secondary weapon here. use full weapon code: weapon_usp etc
    es_xsetinfo grenades 1 //equip players with grenades 1=on 0=off
    es_xsetinfo speedup 1 //temporarily allow faster movement 1=on 0=off
    es_xsetinfo noblock 1 //temporarily allow players to clip through others 1=on 0=off
}


event player_activate
{
    es playervar set event_var(userid) count 0
}

event round_start
{
    es_delayed 10 es_xsetinfo round_check 1
}

event round_end
{
    es_xsetinfo round_check 0
}

event player_spawn
{
    es_xsetinfo spawn_count 0
    es playervar get spawn_count event_var(userid) count
    if (server_var(round_check) = 1) do
    {
    if (event_var(es_userteam) = 3) do
    {
        if (server_var(spawn_count) = 1) do
        {
            es_give event_var(userid) player_weaponstrip
            es_fire event_var(userid) player_weaponstrip Strip 1
            es es_xkeygetvalue wcs_tmp WCSuserdata event_var(userid) invis; es est_setplayercolor event_var(userid) 0 0 0 0 1;
            es_delayed server_var(spawn_invis_time) es est_setplayercolor event_var(userid) 255 255 255 server_var(wcs_tmp) 1;es_delayed server_var(spawn_invis_time) es es_xkeysetvalue WCSuserdata event_var(userid) invis server_var(wcs_tmp)
            es_delayed server_var(spawn_invis_time) es_give event_var(userid) server_var(primary)
            es_delayed server_var(spawn_invis_time) es_give event_var(userid) server_var(secondary)
            es_delayed server_var(spawn_invis_time) es_give event_var(userid) weapon_knife
            if (server_var(grenades) = 1) do
            {
            es_delayed server_var(spawn_invis_time) es_give event_var(userid) weapon_hegrenade
            }
            if (server_var(speedup) = 1) do
            {
            es es_xkeygetvalue wcs_tmp WCSuserdata event_var(userid) speed;es est_speed event_var(userid) 4;
            es_delayed server_var(spawn_invis_time) est_speed event_var(userid) server_var(wcs_tmp);es_delayed server_var(spawn_invis_time) es_xkeysetvalue WCSuserdata event_var(userid) speed server_var(wcs_tmp)
            }
            if (server_var(noblock) = 1) do
            {
            es_setplayerprop event_var(userid) CCSPlayer.baseclass.baseclass.baseclass.baseclass.baseclass.baseclass.m_CollisionGroup 2
            es_delayed server_var(spawn_invis_time) es_setplayerprop event_var(userid) CCSPlayer.baseclass.baseclass.baseclass.baseclass.baseclass.baseclass.m_CollisionGroup 5
            }
        }
    }
    if (event_var(es_userteam) = 2) do
    {
        if (server_var(spawn_count) = 1) do
        {
            es_give event_var(userid) player_weaponstrip
            es_fire event_var(userid) player_weaponstrip Strip 1
            es es_xkeygetvalue wcs_tmp WCSuserdata event_var(userid) invis; es est_setplayercolor event_var(userid) 0 0 0 0 1;
            es_delayed server_var(spawn_invis_time) es est_setplayercolor event_var(userid) 255 255 255 server_var(wcs_tmp) 1;es_delayed server_var(spawn_invis_time) es es_xkeysetvalue WCSuserdata event_var(userid) invis server_var(wcs_tmp)
            es_delayed server_var(spawn_invis_time) es_give event_var(userid) server_var(primary)
            es_delayed server_var(spawn_invis_time) es_give event_var(userid) server_var(secondary)
            es_delayed server_var(spawn_invis_time) es_give event_var(userid) weapon_knife
            if (server_var(grenades) = 1) do
            {
            es_delayed server_var(spawn_invis_time) es_give event_var(userid) weapon_hegrenade
            }
            if (server_var(speedup) = 1) do
            {
            es es_xkeygetvalue wcs_tmp WCSuserdata event_var(userid) speed;es est_speed event_var(userid) 4;
            es_delayed server_var(spawn_invis_time) est_speed event_var(userid) server_var(wcs_tmp);es_delayed server_var(spawn_invis_time) es_xkeysetvalue WCSuserdata event_var(userid) speed server_var(wcs_tmp)
            }
            if (server_var(noblock) = 1) do
            {
            es_setplayerprop event_var(userid) CCSPlayer.baseclass.baseclass.baseclass.baseclass.baseclass.baseclass.m_CollisionGroup 2
            es_delayed server_var(spawn_invis_time) es_setplayerprop event_var(userid) CCSPlayer.baseclass.baseclass.baseclass.baseclass.baseclass.baseclass.m_CollisionGroup 5
            }
        }
    }
    es playervar set event_var(userid) count 0
    }
}

event player_death
{
    es playervar set event_var(userid) count 1
    es est_removeidle weapon
    es est_removeidle item
}

First Problem: The NoClip (Walk through Players, Not fly around and be gay)  aint working. It allows people to walk through me (if i am standing still), but does not allow me to walk through them.

Second Problem: The Invisibility has a few bugs. When you die, it activates and makes me completely invisible. Then after a 15 second delay it is suppose to make me the invisibility that the race's invisibility is set at. Instead t just flashes fully invisible for half a second and then makes me completely invisible for the rest of the time.

[TeacherCreature Helped me a bit with this code so I'm just giveing him some credit]

Offline CA.Berettonawak

  • Le renomm� m�connu...
  • Watchdogs
  • Level 7 Expert
  • *****
  • Posts: 3057
  • Big Berettonawak is watching you...
    • Coding-Alliance.Com : A bunch of coders? Why not a bunch of players? :P
Re: Spawn Protection Script
« Reply #1 on: October 30, 2008, 11:40:12 AM »
for your noblock, you have to use playerprop CBaseEntity.m_CollisionGroup 2 .
Quote from: N0life
Beret, keep yourself focusing on 1 project. Be sure to memorize that down since it sounds good.

Quote from: myself
i love tuna juice :D

Quote from: Pietro
=CA= Pietro: back
=CA= Pietro: sorry, was downstair sharing my chocolate with my cat
=CA= Pietro: you should see his face when he ate it xD

Quote from: myself
=CA= Berettonawak: just because you don't have hope doesn't mean we're doomed