Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class SillyHelixESVNew extends HelixESVNew
- placeable;
- var xWeaponBase X;
- var bool bSecondTimer;
- var() float PickUpRespawnTime;
- var() bool bIsWeaponStay;
- var() string DLWeaponClassStr;
- var() string DLAmmoClassStr;
- var() class<UTAmmoPickup> AmmoClass;
- var() class<Pickup> PickupHClass;
- var() class<Pickup> PickupAClass;
- simulated function PostNetBeginPlay()
- {
- local class<UTAmmoPickup> AmrilAmmoClass;
- local class<Weapon> LinkClass;
- AmrilAmmoClass = class<UTAmmoPickup>(DynamicLoadObject(DLAmmoClassStr, class'Class'));
- //LinkClass = class<Pickup>(DynamicLoadObject("WOSPulseGun_BETA1.PulseGunPickup", class'Class'));
- if (Role == ROLE_Authority)
- X = spawn(Class'SillyRPG.xWeaponBaseSilly',self);
- if (X != None)
- {
- LinkClass = class<Weapon>(DynamicLoadObject(DLWeaponClassStr, class'Class'));
- X.bHidden = true;
- X.WeaponType=LinkClass;
- }
- SetTimer(0.5,false);
- a = spawn(PickupAClass, self) ; //Pickupz
- //a.bReplicateMovement = true;
- //a.bAlwaysRelevant = true;
- //a.NetUpdateTime = Level.TimeSeconds - 1;
- //a.bHidden = true;
- a.bHardAttach = true;
- a.SetPhysics(PHYS_None);
- a.SetLocation( GetBoneCoords(ShieldPickupBone).Origin );
- a.SetRotation( GetBoneRotation(ShieldPickupBone, 1) );
- a.SetBase(self);
- if (Level.Netmode == NM_DEDICATEDSERVER)
- a.bTearOff=true;
- //a.bOnlyDrawIfAttached = true;
- //a.bUpdateSimulatedPosition = true;
- //a.bHidden = true;
- //a.NetUpdateTime = Level.TimeSeconds - 1;
- //a.bHidden = false;
- //a.NetUpdateTime = Level.TimeSeconds - 1;
- //AttachToBone(a, ShieldPickupBone) ;
- b = spawn(PickupHClass, self) ;
- b.bHardAttach = true;
- b.SetPhysics(PHYS_None);
- b.SetLocation( GetBoneCoords(HealthPickupBone).Origin );
- b.SetRotation( GetBoneRotation(HealthPickupBone, 1) );
- b.SetBase(self);
- if (Level.Netmode == NM_DEDICATEDSERVER)
- b.bTearOff=true;
- //c = spawn(LinkClass, self) ; //<- the green lines r the pickups bening spawned on the pickup bones
- //c.bHardAttach = true;
- //AttachToBone(c, LinkGunPickupBone) ;
- d = spawn(AmmoClass, self) ;
- AttachToBone(d, LinkAmmoBone1) ;
- d.bHidden = true;
- e = spawn(AmmoClass, self) ;
- AttachToBone(e, LinkAmmoBone2) ;
- e.bHidden = true;
- f = spawn(AmmoClass, self) ;
- AttachToBone(f, LinkAmmoBone3) ;
- f.bHidden = true;
- g = spawn(AmrilAmmoClass, self) ; // class 'Onslaught.ONSAVRiLAmmoPickup'
- AttachToBone(g, FlakAmmoBone) ;
- g.bHidden = true;
- h = spawn(AmrilAmmoClass, self) ;
- AttachToBone(h, RocketAmmoBone) ;
- h.bHidden = true;
- Super.PostNetBeginPlay();
- }
- /*
- simulated function PostNetReceive()
- {
- log(self $ " PostNetReceive1");
- if (Role != ROLE_Authority)
- {
- log(self $ " PostNetReceive3");
- a.bHidden = true;
- b.bHidden = true;
- }
- }
- */
- function Timer()
- {
- if (!bSecondTimer)
- {
- if (X != None)
- X.PostBeginPlay();
- //a = spawn(PickupAClass, self);
- //b = spawn(PickupHClass, self);
- bSecondTimer = true;
- SetTimer(0.3,false);
- return;
- }
- if (X != None && X.myPickUp != None)
- {
- c = X.myPickUp;
- c.PickupBase = None;
- X.myPickUp = None;
- c.bHardAttach = true;
- c.SetOwner(self);
- X.SetLocation(vect(0,0,0) );
- c.SetPhysics(PHYS_None);
- c.GotoState( 'Pickup' );
- c.bHidden = false;
- WeaponPickup(c).bWeaponStay = bIsWeaponStay;
- if (PickUpRespawnTime >= 0)
- c.RespawnTime = PickUpRespawnTime;
- c.SetLocation( GetBoneCoords(LinkGunPickupBone).Origin );
- c.SetRotation( GetBoneRotation(LinkGunPickupBone, 1) );
- c.SetBase(self);
- //c.bDropped = false;
- //WeaponPickup(c).bThrown = true;
- //AttachToBone(c, LinkGunPickupBone) ;
- //a.NetUpdateTime = Level.TimeSeconds - 1;
- //a.bHidden = true;
- //b.NetUpdateTime = Level.TimeSeconds - 1;
- //b.bHidden = true;
- }
- d.bHidden = false;
- e.bHidden = false;
- f.bHidden = false;
- g.bHidden = false;
- h.bHidden = false;
- /*
- a.PickupBase = None;
- a.bHardAttach = true;
- a.SetPhysics(PHYS_None);
- a.GotoState( 'Pickup' );
- a.bHidden = false;
- a.SetLocation( GetBoneCoords(ShieldPickupBone).Origin );
- a.SetRotation( GetBoneRotation(ShieldPickupBone, 1) );
- a.SetBase(self);
- a.bReplicateMovement = true;
- a.bAlwaysRelevant = true;
- //AttachToBone(a, ShieldPickupBone) ;
- b.PickupBase = None;
- b.bHardAttach = true;
- b.SetPhysics(PHYS_None);
- b.GotoState( 'Pickup' );
- b.bHidden = false;
- b.SetLocation( GetBoneCoords(HealthPickupBone).Origin );
- b.SetRotation( GetBoneRotation(HealthPickupBone, 1) );
- b.SetBase(self);
- b.bReplicateMovement = true;
- b.bAlwaysRelevant = true;
- //AttachToBone(b, HealthPickupBone) ;
- */
- }
- function UpdateRoll() //Update Pickup Spins
- {
- local rotator r;
- if (Level.NetMode == NM_DedicatedServer)
- return;
- aCurrentSpin += 800;
- aCurrentSpin = aCurrentSpin % 65536.f;
- r.Yaw = int(aCurrentSpin);
- SetBoneRotation(HealthPickupBone, r, 0, 1.f);
- bCurrentSpin += 900;
- bCurrentSpin = bCurrentSpin % 65536.f;
- r.Yaw = int(bCurrentSpin);
- SetBoneRotation(ShieldPickupBone, r, 0, 1.f);
- }
- simulated function Destroyed()
- {
- local int i;
- if(Level.NetMode != NM_DedicatedServer)
- {
- for(i=0;i<TrailEffects.Length;i++)
- TrailEffects[i].Destroy();
- TrailEffects.Length = 0;
- for(i=0; i<StreamerEffect.Length; i++)
- StreamerEffect[i].Destroy();
- StreamerEffect.Length = 0;
- }
- a.destroy() ; //Remove Pickups
- b.destroy() ;
- c.destroy() ;
- X.destroy() ;
- d.destroy() ;
- e.destroy() ;
- f.destroy() ;
- g.destroy() ;
- h.destroy() ;
- Super.Destroyed();
- }
- //class 'XPickups.ShieldPack'
- // bNetNotify = true
- defaultproperties
- {
- bForceSkelUpdate = true
- PickUpRespawnTime = -5
- bIsWeaponStay = true
- DLWeaponClassStr = "MonsterAssaultRPG.RPGLinkGun";
- DLAmmoClassStr = "AMRiLME.AMRiLAmmoPickup";
- AmmoClass = class 'xWeapons.LinkAmmoPickup';
- PickupHClass = class 'HelixHealth';
- PickupAClass = class 'HelixShield';
- ShieldPickupBone = "ArmorPickup"
- HealthPickupBone = "HealthPickup"
- LinkGunPickupBone = "LinkGunPickup"
- LinkAmmoBone1 = "LinkAmmo1"
- LinkAmmoBone2 = "LinkAmmo2"
- LinkAmmoBone3 = "LinkAmmo3"
- FlakAmmoBone = "FlakAmmo"
- RocketAmmoBone = "RocketAmmo"
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement