nl.tudelft.pogamut.ut2004.agent.module.shooting.weapon
Class FlakCannonShooting
java.lang.Object
cz.cuni.amis.pogamut.base.agent.module.AgentModule<AGENT>
cz.cuni.amis.pogamut.base.agent.module.SensorModule<UT2004Bot>
nl.tudelft.pogamut.unreal.agent.module.shooting.AbstractWeaponShooting
nl.tudelft.pogamut.ut2004.agent.module.shooting.weapon.FlakCannonShooting
- All Implemented Interfaces:
- cz.cuni.amis.pogamut.base.component.IComponent, nl.tudelft.pogamut.unreal.agent.module.shooting.WeaponShooting
public class FlakCannonShooting
- extends nl.tudelft.pogamut.unreal.agent.module.shooting.AbstractWeaponShooting
Module to work efficiently with the flak cannon.
To avoid self damage the module won't use the secondary fire mode when it
might blow up in it's face and won't be able to survive the damage. Instead
secondary mode will be used. The effectiveness of this is somewhat limited as
flak cannon projectiles bounce around.
Consider using WeaponPrefs to ban the flak cannon on close range.
- Author:
- mpkorstanje
| Fields inherited from class nl.tudelft.pogamut.unreal.agent.module.shooting.AbstractWeaponShooting |
ABOVE_PLAYER_OFFSET, active, BELOW_PLAYER_OFFSET, endMessageListener, FACING_ANGLE, focus, info, shoot, target, weaponPref, weaponry |
| Fields inherited from class cz.cuni.amis.pogamut.base.agent.module.SensorModule |
worldView |
| Fields inherited from class cz.cuni.amis.pogamut.base.agent.module.AgentModule |
agent, controller, eventBus, log |
|
Method Summary |
protected WeaponPref |
getDefaultWeaponPref()
|
protected boolean |
isSafeToShoot(cz.cuni.amis.pogamut.base3d.worldview.object.ILocated target)
Don't shoot unless we are far away enough to avoid damaging ourselves, or
healthy enough to survive the damage. |
protected void |
shoot()
|
| Methods inherited from class nl.tudelft.pogamut.unreal.agent.module.shooting.AbstractWeaponShooting |
getFocus, getWeaponType, hasTarget, isActive, isWeaponReady, setFocus, shoot, stopShoot |
| Methods inherited from class cz.cuni.amis.pogamut.base.agent.module.AgentModule |
cleanUp, getComponentId, getLog, getState, initComponentId, isRunning, kill, pause, reset, resume, start, stop, toString |
FLAK_CANNON_PRIMARY
protected static final WeaponPref FLAK_CANNON_PRIMARY
FLAK_CANON_SECONDARY_PROJECTILE_SPLASH_RADIUS
protected static final double FLAK_CANON_SECONDARY_PROJECTILE_SPLASH_RADIUS
- See Also:
- Constant Field Values
FLAK_CANON_SECONDARY_PROJECTILE_DAMAGE
protected static final int FLAK_CANON_SECONDARY_PROJECTILE_DAMAGE
- See Also:
- Constant Field Values
FlakCannonShooting
public FlakCannonShooting(UT2004Bot<?,?,?> agent,
AgentInfo info,
ImprovedShooting shoot,
Weaponry weaponry)
shoot
protected void shoot()
- Specified by:
shoot in class nl.tudelft.pogamut.unreal.agent.module.shooting.AbstractWeaponShooting
isSafeToShoot
protected boolean isSafeToShoot(cz.cuni.amis.pogamut.base3d.worldview.object.ILocated target)
- Don't shoot unless we are far away enough to avoid damaging ourselves, or
healthy enough to survive the damage.
- Parameters:
target - to shoot
- Returns:
- true iff we won't kill ourselves.
getDefaultWeaponPref
protected WeaponPref getDefaultWeaponPref()
- Specified by:
getDefaultWeaponPref in class nl.tudelft.pogamut.unreal.agent.module.shooting.AbstractWeaponShooting
Copyright © 2014 AMIS research group, Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic. All Rights Reserved.