Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #pseudocode
- class TimedAttack(float startTime, float endTime, IAttack attack){
- float startTime
- float endTime
- IAttack attack
- public void TryAttack(float currentTime):
- {
- if(currentTime>startTime && currentTime<endTime) attack.Perform()
- }
- }
- interface IAttack()
- {
- void Perform()
- }
- class SwingAttack()
- {
- override Perform()
- {
- print("swinging")
- }
- }
- class StrikeAttack()
- {
- override Perform()
- {
- print("striking")
- }
- }
- class Attacker()
- {
- List<TimedAttack> attacks
- Constructor()
- {
- attacks.Add(new TimedAttack(1,2, new SwingAttack()))
- attacks.Add(new TimedAttack(3,4, new StrikeAttack()))
- }
- Update()
- {
- foreach attack in attacks {attack.TryAttack()}
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement