コード例 #1
0
        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));
            //}
        }
コード例 #2
0
 public Attack(int damage, EnumData.AttackTypes attackType, EnumData.Projectiles projectiles)
 {
     isInitialised    = true;
     this.damage      = damage;
     this.attackType  = attackType;
     this.projectiles = projectiles;
 }
コード例 #3
0
 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;
 }