public override void Trigger() { base.Trigger(); if (_job == null) { _job = new FuseJob((float)_fuseTime, _attackDamage, _explosionRadius, FuseJob.Shape.Diamond, _context); } }
public override bool Damage(int amount) { float delayModifier = (float)(_context.gameManager.NumberGenerator.NextDouble() * _fuseTime); if (_job == null) { _job = new FuseJob((float)_fuseTime - delayModifier, _attackDamage, _explosionRadius, FuseJob.Shape.Square, _context); } return(true); }
public override bool Deploy(ByteVector2 there, byte inFaction) { if (!base.Deploy(there, inFaction)) { return(false); } if (_job == null) { _job = new FuseJob((float)_fuseTime, _attackDamage, _explosionRadius, FuseJob.Shape.Square, _context); } return(true); }