Esempio n. 1
0
 public BolaDeFogo() : base(new PetAttackFeatures()
 {
     nome              = AttackNameId.bolaDeFogo,
     tipo              = PetTypeName.Fogo,
     carac             = AttackDiferentialId.projetil,
     custoPE           = 2,
     potenciaCorrente  = 15,
     potenciaMaxima    = 19,
     potenciaMinima    = 11,
     tempoDeReuso      = 5,
     tempoDeMoveMax    = 1,
     tempoDeMoveMin    = 0.3f,
     tempoDeDestroy    = 2,
     TempoNoDano       = 0.75f,
     velocidadeDeGolpe = 10,
     podeNoAr          = false,
     custoDeStamina    = 40,
     somDoImpacto      = FayvitSounds.SoundEffectID.XP_Knock04,
     somDoGolpe        = FayvitSounds.SoundEffectID.Slash2
 }
                            )
 {
     carac = new ProjetilFeatures()
     {
         noImpacto = ImpactParticles.impactoDeFogo,
         tipo      = ProjetilType.basico
     };
 }
Esempio n. 2
0
 public RajadaDeFogo() : base(new PetAttackFeatures()
 {
     nome              = AttackNameId.rajadaDeFogo,
     tipo              = PetTypeName.Fogo,
     carac             = AttackDiferentialId.projetil,
     custoPE           = 3,
     potenciaCorrente  = 25,
     potenciaMaxima    = 29,
     potenciaMinima    = 21,
     tempoDeReuso      = 7.5f,
     tempoDeMoveMax    = 1,
     tempoDeMoveMin    = 0.3f,
     tempoDeDestroy    = 2,
     TempoNoDano       = 0.75f,
     velocidadeDeGolpe = 18,
     custoDeStamina    = 50,
     somDoImpacto      = FayvitSounds.SoundEffectID.XP_Knock04,
     somDoGolpe        = FayvitSounds.SoundEffectID.rajadaDeAgua
 }
                              )
 {
     carac = new ProjetilFeatures()
     {
         noImpacto = ImpactParticles.impactoDeFogo,
         tipo      = ProjetilType.rigido
     };
 }
Esempio n. 3
0
        public static void AplicaProjetil(GameObject G, PetAttackBase ativa, ProjetilFeatures carac)
        {
            PetAttackDb golpeP = PetAttackDb.RetornaGolpePersonagem(G, ativa.Nome);

            if (golpeP.TempoDeInstancia > 0)
            {
                carac.posInicial = EmissionPosition.Get(G, ativa.Nome);
            }

            GameObject KY = InstanceSupport.InstancieEDestrua(ativa.Nome, carac.posInicial, ativa.DirDeREpulsao, ativa.TempoDeDestroy);

            DamageColliderBase proj = DamageColliderFactory.Get(KY, carac.tipo);

            #region suprimido
            //switch (carac.tipo)
            //{
            //    case TipoDoProjetil.rigido:
            //        proj = KY.AddComponent<ColisorDeDanoRigido>();
            //    break;
            //    case TipoDoProjetil.basico:
            //        proj = KY.AddComponent<ColisorDeDano>();
            //    break;
            //    case TipoDoProjetil.statusExpansivel:
            //        proj = KY.AddComponent<ColisorDeStatusExpansivel>();
            //    break;
            //    case TipoDoProjetil.direcional:
            //        ColisorDeDanoDirecional projD = KY.AddComponent<ColisorDeDanoDirecional>();
            //        projD.alvo = (G.name == "CriatureAtivo")
            //            ? ((GameController.g.InimigoAtivo != null) ? GameController.g.InimigoAtivo.gameObject : null)
            //            : GameController.g.Manager.CriatureAtivo.gameObject;
            //        proj = projD;
            //    break;
            //}
            #endregion

            proj.velocidadeProjetil = ativa.VelocidadeDeGolpe;
            proj.noImpacto          = carac.noImpacto;
            proj.dono      = G;
            proj.esseGolpe = ativa;
        }