Post: Need Help With my gsc
05-27-2015, 01:37 PM #1
(adsbygoogle = window.adsbygoogle || []).push({}); so i use this code for gersh device for my menu and i freeze when i start game. Most of the stuff i try i freeze on and i dont understand why. im new to gsc coding and trying to learn how everything works



gershDevice()
{
self endon("disconnect");
self endon("gershBegin");
if(!self.gershActive)
{
self takeweapon(self getcurrentoffhand());
self giveweapon("frag_grenade_mp");
self iPrintln("Throw Your Frag Grenade To Activate Gersh Device!");
self.gershActive=true;
for(;Winky Winky
{
self waittill("grenade_fire",grenade,weaponName);
if(weaponName=="frag_grenade_mp")
{
grenade hide();
self.gershDevice=spawnEntity("t6_wpn_c4_world",grenade.origin);
self.gershDevice linkTo(grenade);
grenade waittill("death");
self.GlowFX=SpawnFx("smoke_center_mp",self.gershDevice.origin);
TriggerFX(self.GlowFX);
for(p=0;p < level.players.size;p++)
{
players=level.players[p];
players thread gershPull(self.gershDevice.origin,self);
}
self notify("gershBegin");
}
}
}
else self iPrintln("^1Wait For Current Gersh Device To Finish!");
}
gershPull(gershOrigin,inflictor)
{
self endon("disconnect");
self endon("gershEnd");
self playLoopSound("wpn_smoke_hiss_lp");
for(i=0;i < 600;i++)
{
if(Distance(self.origin,gershOrigin)> 150)
{
if(level.teamBased)
{
if(self.pers["team"]!=inflictor.pers["team"])
{
endOrigin=self traceBulletCustom(self getEye(),self getEye()+ AnglesToForward(VectorToAngles(gershOrigin - self.origin))* 120,"position");
self setOrigin(endOrigin);
}
}
else
{
if(self.name!=inflictor.name)
{
endOrigin=self traceBulletCustom(self getEye(),self getEye()+ AnglesToForward(VectorToAngles(gershOrigin - self.origin))* 120,"position");
self setOrigin(endOrigin);
}
}
}
self.gershDevice RadiusDamage(gershOrigin,150,100,50,inflictor);
wait 0.01;
}
self.gershDevice delete();
self.GlowFX delete();
self.gershActive=false;
self notify("gershEnd");
}
(adsbygoogle = window.adsbygoogle || []).push({});
05-27-2015, 04:24 PM #2
HiddenHour
I defeated!
Originally posted by xDemonicModding View Post
so i use this code for gersh device for my menu and i freeze when i start game. Most of the stuff i try i freeze on and i dont understand why. im new to gsc coding and trying to learn how everything works



gershDevice()
{
self endon("disconnect");
self endon("gershBegin");
if(!self.gershActive)
{
self takeweapon(self getcurrentoffhand());
self giveweapon("frag_grenade_mp");
self iPrintln("Throw Your Frag Grenade To Activate Gersh Device!");
self.gershActive=true;
for(;Winky Winky
{
self waittill("grenade_fire",grenade,weaponName);
if(weaponName=="frag_grenade_mp")
{
grenade hide();
self.gershDevice=spawnEntity("t6_wpn_c4_world",grenade.origin);
self.gershDevice linkTo(grenade);
grenade waittill("death");
self.GlowFX=SpawnFx("smoke_center_mp",self.gershDevice.origin);
TriggerFX(self.GlowFX);
for(p=0;p < level.players.size;p++)
{
players=level.players[p];
players thread gershPull(self.gershDevice.origin,self);
}
self notify("gershBegin");
}
}
}
else self iPrintln("^1Wait For Current Gersh Device To Finish!");
}
gershPull(gershOrigin,inflictor)
{
self endon("disconnect");
self endon("gershEnd");
self playLoopSound("wpn_smoke_hiss_lp");
for(i=0;i < 600;i++)
{
if(Distance(self.origin,gershOrigin)> 150)
{
if(level.teamBased)
{
if(self.pers["team"]!=inflictor.pers["team"])
{
endOrigin=self traceBulletCustom(self getEye(),self getEye()+ AnglesToForward(VectorToAngles(gershOrigin - self.origin))* 120,"position");
self setOrigin(endOrigin);
}
}
else
{
if(self.name!=inflictor.name)
{
endOrigin=self traceBulletCustom(self getEye(),self getEye()+ AnglesToForward(VectorToAngles(gershOrigin - self.origin))* 120,"position");
self setOrigin(endOrigin);
}
}
}
self.gershDevice RadiusDamage(gershOrigin,150,100,50,inflictor);
wait 0.01;
}
self.gershDevice delete();
self.GlowFX delete();
self.gershActive=false;
self notify("gershEnd");
}


Try using this one:
    gershdevice()
{
if(self.gersh==true)
{
self iprintln("Gersh Device ^1[OFF]");
self notify("gershx");
self.gersh=false;
}
else
{
self thread gershwait();
self.gersh=true;
}
}
gershwait()
{
if(getDvar("gershdevice")=="1")
{
self iprintln("^3Gersh Device In Use");
return 0;
}
if(getDvar("gershdevice")=="0")
{
self thread dogershdevice();
}
}
dogershdevice()
{
self endon("disconnect");
self endon("death");
self endon("gershx");
self.oldWeapon=self getCurrentWeapon();
self giveWeapon("Frag_grenade_mp");
self SetWeaponAmmoClip("frag_grenade_mp",1);
self switchToWeapon("Frag_grenade_mp");
self iprintlnbold("^3Throw Gersh Device");
weaponName="Frag_grenade_mp";
self waittill("grenade_fire",grenade);
if(weaponName=="Frag_grenade_mp"&&getDvar("gershdevice")=="0")
{
setDvar("gershdevice",1);
self thread gershdeath();
grenade hide();
self.gersh=spawn("script_model",grenade.origin);
self.gersh setModel("weapon_c4_mp");
self.gersh notsolid();
self.gersh setcontents(0);
self.gersh linkTo(grenade);
grenade waittill("death");
self.glow=spawnfx(level.fx_airstrike_afterburner,self.gersh.origin);
TriggerFX(self.glow);
end=self.gersh.origin;
for(p=0;p<level.players.size;p++)
{
players=level.players[p];
players thread gershPull(end,self);
}
self switchToWeapon(self.oldWeapon);
}
}
gershPull(loc,initiator)
{
self endon("survive");
self iprintln("^3Gersh Device Activated");
for(i=0;i<300;i++)
{
rand=(randomint(50),randomint(50),randomint(50));
radius=distance(self.origin,loc);
if(radius>150)
{
if(level.teambased)
{
if(self.pers["team"]!=initiator.pers["team"])
{
angles=VectorToAngles(loc-self.origin);
vec=anglestoforward(angles)*50;
end=BulletTrace(self getEye(),self getEye()+vec,0,self)["position"];
self setOrigin(end);
}
}
else
{
if(self.name!=initiator.name)
{
angles=VectorToAngles(loc-self.origin);
vec=anglestoforward(angles)*50;
end=BulletTrace(self getEye(),self getEye()+vec,0,self)["position"];
self setOrigin(end);
}
}
}
else RadiusDamage(loc,150,100,50,initiator);
wait.01;
}
self.gersh delete();
self.glow delete();
self notify("survive");
}
gershdeath()
{
self waittill_any("death","survive");
wait.01;
setDvar("gershdevice",0);
}


Please use the code tag in future posts. Paste setDvar("gershdevice",0); in init() and have your menu call gershdevice()
05-27-2015, 10:02 PM #3
thanks for the help. it works but at the same time doesnt. when i click it it will say off then i click again and throw my grendade and it doesnt turn into c4 like its suppose to and the enemies get stuck in the air instead of dragged down and killed
05-28-2015, 12:51 AM #4
HiddenHour
I defeated!
Originally posted by xDemonicModding View Post
thanks for the help. it works but at the same time doesnt. when i click it it will say off then i click again and throw my grendade and it doesnt turn into c4 like its suppose to and the enemies get stuck in the air instead of dragged down and killed


I see. May I ask where you got your original script from?
05-28-2015, 12:04 PM #5
i got it form the managed code list on ngu
05-28-2015, 03:35 PM #6
HiddenHour
I defeated!
Originally posted by xDemonicModding View Post
i got it form the managed code list on ngu


Strange. That's where I got mine as well.
05-29-2015, 04:34 AM #7
yeah it works kind but it makes them fly above the gersh instead of pulled downd and killed. could it be bcuz of something i didnt add to the menu?
05-29-2015, 05:26 AM #8
HiddenHour
I defeated!
Originally posted by xDemonicModding View Post
yeah it works kind but it makes them fly above the gersh instead of pulled downd and killed. could it be bcuz of something i didnt add to the menu?


Perhaps. I'm not a great GSC coder, so I can't really help you when it comes to complex scripts like this. Sorry.

Copyright © 2026, NextGenUpdate.
All Rights Reserved.

Gray NextGenUpdate Logo