Package com.csse3200.game.components
Class TouchAttackComponent
java.lang.Object
com.csse3200.game.components.Component
com.csse3200.game.components.TouchAttackComponent
When this entity touches a valid enemy's hitbox, deal damage to them and apply a knockback.
Requires CombatStatsComponent, HitboxComponent on this entity.
Damage is only applied if target entity has a CombatStatsComponent. Knockback is only applied if target entity has a PhysicsComponent.
-
Field Summary
-
Constructor Summary
ConstructorsConstructorDescriptionTouchAttackComponent
(short targetLayer) Create a component which attacks entities on collision, without knockback.TouchAttackComponent
(short targetLayer, float knockback) Create a component which attacks entities on collision, with knockback. -
Method Summary
Modifier and TypeMethodDescriptionvoid
create()
Called when the entity is created and registered.float
Returns the knockback force applied to the enitity it collides with.Methods inherited from class com.csse3200.game.components.Component
dispose, earlyUpdate, getEntity, setEnabled, setEntity, toString, triggerEarlyUpdate, triggerUpdate, update
-
Constructor Details
-
TouchAttackComponent
public TouchAttackComponent(short targetLayer) Create a component which attacks entities on collision, without knockback.- Parameters:
targetLayer
- The physics layer of the target's collider.
-
TouchAttackComponent
public TouchAttackComponent(short targetLayer, float knockback) Create a component which attacks entities on collision, with knockback.- Parameters:
targetLayer
- The physics layer of the target's collider.knockback
- The magnitude of the knockback applied to the entity.
-
-
Method Details
-
getKnockbackForce
public float getKnockbackForce()Returns the knockback force applied to the enitity it collides with.- Returns:
- the size of the knockback force
-
create
public void create()Description copied from class:Component
Called when the entity is created and registered. Initial logic such as calls to GetComponent should be made here, not in the constructor which is called before an entity is finished.
-