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 }; }
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 }; }
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; }