public override void BeginToUse(Actor actorUsing, OnUsed <Actor> onUseBegin, OnUsed <Actor> onDynamicItemUsed) { //Casting projectile here this.actorUsing = actorUsing; onUseOver = onDynamicItemUsed; attack = actorUsing.currentAttack; projectileTypeThrown = actorUsing.currentAttack.projectiles; actorHadAuthority = actorUsing.hasAuthority(); gameObjectInstanceId = actorUsing.gameObject.GetInstanceID(); ownerId = actorUsing.ownerId; //Debug.LogError("PProjectile to throw type "+projectileTypeThrown.ToString()); GameObject gToSpawn = Resources.Load(projectileTypeThrown.ToString()) as GameObject; if (gToSpawn == null) { Debug.LogError("gToSpawn is null"); return; } liveProjectile = GridManager.InstantiateGameObject(gToSpawn).GetComponent <ProjectileUtil>(); liveProjectile.transform.position = GridManager.instance.cellToworld(actorUsing.positionToSpawnProjectile); initPos = liveProjectile.transform.position; finalPos = actorUsing.actorTransform.position + (liveProjectile.projectileTileTravelDistance * GridManager.instance.GetFacingDirectionOffsetVector3(actorUsing.Facing)); tileMovementDirection = actorUsing.Facing; liveProjectile.Initialise(this); //if (projectileTypeThrown==EnumData.Projectiles.FlamePillar) //{ // liveProjectile.transform.position = actorUsing.actorTransform.position + GridManager.instance.GetFacingDirectionOffsetVector3(actorUsing.Facing); // finalPos = actorUsing.actorTransform.position + GridManager.instance.GetFacingDirectionOffsetVector3(actorUsing.Facing) + (liveProjectile.projectileTileTravelDistance * GridManager.instance.GetFacingDirectionOffsetVector3(actorUsing.Facing)); //} }
public Attack(int damage, EnumData.AttackTypes attackType, EnumData.Projectiles projectiles) { isInitialised = true; this.damage = damage; this.attackType = attackType; this.projectiles = projectiles; }
public Attack(float damage, int attackingActorOwnerId, EnumData.AttackTypes attackType, EnumData.Projectiles projectiles) { isInitialised = true; this.damage = damage; this.attackType = attackType; this.projectiles = projectiles; this.attackingActorOwnerId = attackingActorOwnerId; }