XE1M3:
* base implementation of the blast boots * first pass on first chunk of map
This commit is contained in:
		@@ -15,9 +15,38 @@
 | 
			
		||||
 */
 | 
			
		||||
 | 
			
		||||
class PowerBlastJump : Powerup {
 | 
			
		||||
	bool blasting;
 | 
			
		||||
	ChexPlayerHGA ply;
 | 
			
		||||
	property blasting: blasting;
 | 
			
		||||
 | 
			
		||||
	override bool HandlePickup(Inventory item) {
 | 
			
		||||
		bool ok = Super.HandlePickup(item);
 | 
			
		||||
		if (ok) {
 | 
			
		||||
			blasting = false;
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		return ok;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	override void InitEffect() {
 | 
			
		||||
		let ply = ChexPlayerHGA(Owner);
 | 
			
		||||
		ply.AddZ(72); // double std jump height
 | 
			
		||||
		Super.InitEffect();
 | 
			
		||||
 | 
			
		||||
		ply = ChexPlayerHGA(Owner);
 | 
			
		||||
		//ply.AddZ(72); // double std jump height
 | 
			
		||||
		blasting = true;
 | 
			
		||||
		ply.GiveInventoryType("InvBlastBoots");
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	override void Tick() {
 | 
			
		||||
		Super.Tick();
 | 
			
		||||
		if (blasting) {
 | 
			
		||||
			ply.AddZ(8);
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	override void EndEffect() {
 | 
			
		||||
		blasting = false;
 | 
			
		||||
		Super.EndEffect();
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -27,6 +56,8 @@ class InvBlastBoots : PowerupGiver {
 | 
			
		||||
		//$Title "Blast Boots"
 | 
			
		||||
		+COUNTITEM
 | 
			
		||||
		Tag "$TAG_BLASTBOOTS";
 | 
			
		||||
		Powerup.Type "PowerBlastJump";
 | 
			
		||||
		Powerup.Duration 10; // ten tics should be enough for the engine to go "oh yeah powerup" while still being an instant-effect
 | 
			
		||||
 | 
			
		||||
		Inventory.Icon "NULLA0";
 | 
			
		||||
		Inventory.AltHUDIcon "NULLA0";
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user