Combined chambering code with Adam's aiming code. Chambering and launching now handled by Launcher monobehaviour.
ProjectileBehavior handles running the projectile movement for the follower
ProjectileTrajectory is the parent class for all trajectory-generating logic. Inherit and implement your own path generation logic.
ProjectileTrajectoryRenderer handles drawing the trajectory generated from ProjectileTrajectory classes.
Significant refactoring of original aiming classes to reduce unnecessary inheritance
Fixed chambering lerp to move unit to correct location even during player movement
Deleted broken scenes using Adam's old aiming integration
Reorganized folders
Known bug:
If you press space really quickly right after hitting tab to chamber a unit, the unit can become stuck at the chambering position. I don't know what's causing this exactly yet but will create a bug for it.
Current limitations:
No way to recall units once all fired
ProjectileTrajectory instance currently created inside ProjectileBehaviour. In the future, ProjectileTrajectory instance should be obtained from the follower's unit information. For example, berserker might have ParabolicProjectileTrajectory and infantry captain might have RunForwardProjectileTrajectory.
Tasks completed:
Launcher
monobehaviour.ProjectileBehavior
handles running the projectile movement for the followerProjectileTrajectory
is the parent class for all trajectory-generating logic. Inherit and implement your own path generation logic.ProjectileTrajectoryRenderer
handles drawing the trajectory generated fromProjectileTrajectory
classes.Known bug:
Current limitations:
ProjectileTrajectory
instance currently created insideProjectileBehaviour
. In the future,ProjectileTrajectory
instance should be obtained from the follower's unit information. For example, berserker might haveParabolicProjectileTrajectory
and infantry captain might haveRunForwardProjectileTrajectory
.