void OnTriggerEnter2D(Collider2D collider) { if (collider.gameObject.tag == ControladorGlobal.STRING_TAG_ENEMIGO) { danio = jugadorEstadisticas.Fuerza_fisica_actual; bool es_critico = ManejadorCombate.esCritico(jugadorEstadisticas.Critico); if (es_critico) { danio *= 2; ControladorGlobal.manejadorSFX.reproducirSFX(ManejadorSFX.SFX_GOLPES[2]); } else { ControladorGlobal.manejadorSFX.reproducirSFX(ManejadorSFX.SFX_GOLPES[Random.Range(0, 2)]); } ManejadorCombate.danioFlotanteAlEnemigoPorTrigger(this.transform, jugadorEstadisticas, collider, danio, es_critico, ControladorGlobal.jugador.ManejadorHabilidadesPasivas.Tiene_vampirismo); //puede entrenar una destreza con sus manos if (ControladorGlobal.jugador.ManejadorDestrezas.Esta_entrenando && ControladorGlobal.jugador.ManejadorDestrezas.Tema_entrenamiento == "FF") { int aleatorio = Random.Range(1, 101); if (aleatorio == 2) //2% prob de entrenar con puño { ControladorGlobal.jugador.ManejadorDestrezas.entrenar(); } } } }
void OnTriggerEnter2D(Collider2D col) { if (col.gameObject.tag == ControladorGlobal.STRING_TAG_ENEMIGO && jugador.JugadorEstado.Esta_atacando) { float danio_final = danio; bool es_critico = ManejadorCombate.esCritico(ControladorGlobal.jugador.JugadorEstadisticas.Critico); if (es_critico) { danio_final *= 2; ControladorGlobal.manejadorSFX.reproducirSFX(ManejadorSFX.SFX_ESPADA_CON_COLISION[Random.Range(0, 3)]); } else { ControladorGlobal.manejadorSFX.reproducirSFX(ManejadorSFX.SFX_ESPADA_SIN_COLISION[Random.Range(0, 3)]); } if (encantamiento == ENCANTAMIENTO_FUEGO) { danio_final += 10; } else if (encantamiento == ENCANTAMIENTO_HIELO) { danio_final += 5; } else if (encantamiento == ENCANTAMIENTO_TRUENO) { danio_final += 15; } else if (encantamiento == ENCANTAMIENTO_NINGUNO) { } ManejadorCombate.danioFlotanteAlEnemigoPorTrigger(this.transform, jugador.JugadorEstadisticas, col, danio_final, es_critico, jugador.ManejadorHabilidadesPasivas.Tiene_vampirismo); } }
void OnCollisionStay2D(Collision2D collision) { if (collision.gameObject.tag != ControladorGlobal.STRING_TAG_MAPA) { tiempo_danio_contador += Time.deltaTime; if (tiempo_danio_contador > tiempo_danio) { if (collision.gameObject.tag == ControladorGlobal.STRING_TAG_ENEMIGO) { float danio = ControladorGlobal.jugador.JugadorEstadisticas.Fuerza_magica_destructora_actual; bool es_critico = ManejadorCombate.esCritico(ControladorGlobal.jugador.JugadorEstadisticas.Critico); if (es_critico) { danio *= 2; } ManejadorCombate.danioFlotanteAlEnemigoPorCollision(this.transform, ControladorGlobal.jugador.JugadorEstadisticas, collision, danio, es_critico, ControladorGlobal.jugador.ManejadorHabilidadesPasivas.Tiene_vampirismo); } tiempo_danio_contador = 0; } } }