Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class ArtifactWeaponBasePlacerPickup extends RPGArtifactPickup;
- struct PossibleWeaponsStruct
- {
- var() class<Weapon> WeaponClass;
- var() int Requirement;
- };
- //struct PickupsRotationStruct
- //{
- // var class<Weapon> WeaponClass;
- // var int Requirement;
- // var int StoredResources;
- //};
- var() array< PossibleWeaponsStruct > StoredPossibleWeapons;
- var() int StoredResources;
- var() bool bInternalListOnly;
- var WeaponBasePlacerPickupsManager DefManager; // Static Variables
- var string MapName;
- function PostBeginPlay()
- {
- local WeaponBasePlacerPickupsManager Manager;
- local WeaponBasePlacerPickupsManager.PickupsRotationStruct RotationStruct;
- local int OldL;
- local string s;
- local int is;
- Super(TournamentPickup).PostBeginPlay();
- if (!bInternalListOnly)
- {
- s = string(self);
- is = InStr(s,".");
- s = Left(s,is);
- //log (self $ " 0 " $ s);
- DefManager = class'ArtifactWeaponBasePlacerPickup'.default.DefManager;
- MapName = class'ArtifactWeaponBasePlacerPickup'.default.MapName;
- //log (self $ " 1 " $ DefManager $ " <- " $ class'ArtifactWeaponBasePlacerPickup'.default.DefManager);
- if(MapName != s)
- {
- forEach DynamicActors( class'WeaponBasePlacerPickupsManager', Manager )
- {
- if (Manager.PickupsRotation.length > 0 &&( (Manager.PickupsRotation[0].WeaponClass != None) || (Manager.PickupsRotation[0].StoredResources != 0) ))
- {
- class'ArtifactWeaponBasePlacerPickup'.default.DefManager = Manager;
- //log (self $ " 2 " $ class'ArtifactWeaponBasePlacerPickup'.default.DefManager);
- }
- else
- Manager = None;
- //log (self $ " 2.5 ");
- break;
- }
- class'ArtifactWeaponBasePlacerPickup'.default.MapName = s;
- }
- else
- Manager = DefManager;
- if (Manager != None)
- {
- RotationStruct = Manager.GetRotationStruct();
- if (RotationStruct.WeaponClass != None)
- {
- OldL = StoredPossibleWeapons.length;
- StoredPossibleWeapons.length = OldL +1;
- StoredPossibleWeapons[OldL].WeaponClass = RotationStruct.WeaponClass;
- StoredPossibleWeapons[OldL].Requirement = RotationStruct.Requirement;
- }
- StoredResources += RotationStruct.StoredResources;
- }
- }
- }
- auto state Pickup
- {
- function bool ValidTouch(Actor Other)
- {
- return Super(TournamentPickup).ValidTouch(Other);
- }
- }
- defaultproperties
- {
- DefManager = None
- bInternalListOnly = false
- InventoryType=Class'SillyRPGv1-1.ArtifactWeaponBasePlacer'
- PickupMessage="You got the Weapon Base Placer!"
- PickupSound=SoundGroup'WeaponSounds.Translocator.TranslocatorModuleRegeneration'
- PickupForce="TranslocatorModuleRegeneration"
- DrawType=DT_StaticMesh
- StaticMesh=StaticMesh'2k4ChargerMeshes.ChargerMeshes.WeaponChargerMesh-DS'
- Physics=PHYS_Rotating
- bAcceptsProjectors=False
- DrawScale=0.200000
- AmbientGlow=255
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement