/// <summary> /// Creation des entités temporaires. /// </summary> public void MontrerCartesDeplacement() { /* * Dans le cas où un effet est un déplacement de carte, * on montre la position dans laquelle la carte va pouvoir potentiellement être. */ if (numeroEffet == -2 || numeroEffet == -3) { GameObject CarteDeplacee = FindCardWithID(IDObjectCardGame); GameObject newCarte = Instantiate(CarteDeplacee); if (newCarte.GetComponent <CarteType>().thisCarteType == CarteType.Type.ENTITE) { Entite _entite = newCarte.GetComponent <Entite>(); EntiteTemporaire _entiteTemporaire = newCarte.AddComponent <EntiteTemporaire>(); _entiteTemporaire.setInfoEntiteTemporaire(_entite); Destroy(_entite); } else if (newCarte.GetComponent <CarteType>().thisCarteType == CarteType.Type.ASSISTANCE) { Assistance _assist = newCarte.GetComponent <Assistance>(); AssistanceTemporaire _assistTemporaire = newCarte.AddComponent <AssistanceTemporaire>(); _assistTemporaire.setInfoEntiteTemporaire(_assist); Destroy(_assist); } if (numeroEffet == -2) { // Deplacement vers le board. Transform ChampBataille; ChampBataille = FindPlayerWithID(PlayerIDAssocie).GetComponent <Player>().GetChampBatailleJoueur(); newCarte.transform.SetParent(ChampBataille, false); ChampBataille.gameObject.GetComponent <CartesBoard>().CmdReordonnerCarte(); if (newCarte.GetComponent <CarteType>().thisCarteType == CarteType.Type.ENTITE) { newCarte.GetComponent <EntiteTemporaire>().carteState = Entite.State.CHAMPBATAILLE; } else if (newCarte.GetComponent <CarteType>().thisCarteType == CarteType.Type.ASSISTANCE) { newCarte.GetComponent <AssistanceTemporaire>().carteState = Assistance.State.JOUEE; } } else if (numeroEffet == -3) { // Deplacement vers le sanctuaire. Transform Sanctuaire; Sanctuaire = FindPlayerWithID(PlayerIDAssocie).GetComponent <Player>().GetSanctuaireJoueur(); newCarte.transform.SetParent(Sanctuaire, false); Sanctuaire.gameObject.GetComponent <Sanctuaire>().ReordonnerCarte(); newCarte.GetComponent <EntiteTemporaire>().carteState = Entite.State.SANCTUAIRE; } // Dans tous les cas on montre l'apparition de la carte. newCarte.GetComponent <CarteAnimation>().AnimationDebut(0.5f); } }
public void setInfoEntiteTemporaire(Assistance _assistance) { Name = _assistance.Name; IDCardGame = _assistance.IDCardGame; shortCode = _assistance.shortCode; // Comme l'entité est temporaire, on l'indique aussi avec un alpha de 1/2 Color ancienneCouleur = GetComponent <SpriteRenderer>().color; GetComponent <SpriteRenderer>().color = new Color(ancienneCouleur.r, ancienneCouleur.g, ancienneCouleur.b, 0.5f); gameObject.tag = "CarteTemporaire"; GetComponent <ImageCardBattle>().setImage(shortCode); GetComponent <CarteType>().thisCarteType = CarteType.Type.ASSISTANCE_TEMPORAIRE; GetComponent <CarteType>().instanciee = false; }
/// <summary> /// Définition d'une entité temporaire à partir d'une autre entité. /// </summary> /// <param name="_assistance"></param> public AssistanceTemporaire(Assistance _assistance) { setInfoEntiteTemporaire(_assistance); }