/// <summary> /// Refrescar el estado de los objetivos de esta mision /// </summary> /// <param name="_shotResul"></param> public void RefreshEstadoObjetivos(ShotResult _shotResul) { for (int i = 0; (i < MissionManager.instance.GetMission().Achievements.Count) && (i < m_primas.Length); ++i) { MissionAchievement objetivoCargado = GameplayService.gameLevelMission.GetAchievements()[i]; m_primas[i].RefreshConseguido(MissionManager.instance.GetMission().Achievements[i].IsAchieved() || objetivoCargado.IsAchieved()); } }
public async Task <ActionResult> DeleteConfirmed(Guid id) { MissionAchievement missionAchievement = await db.MissionAchievements.FindAsync(id); db.MissionAchievements.Remove(missionAchievement); await db.SaveChangesAsync(); return(RedirectToAction("Index")); }
public async Task <ActionResult> Edit([Bind(Include = "uMissionAchievementID,uAchievementID,iMissionCount")] MissionAchievement missionAchievement) { if (ModelState.IsValid) { db.Entry(missionAchievement).State = EntityState.Modified; await db.SaveChangesAsync(); return(RedirectToAction("Index")); } ViewBag.uAchievementID = new SelectList(db.Achievements, "uAchievementID", "sName", missionAchievement.uAchievementID); return(View(missionAchievement)); }
public async Task <ActionResult> Create([Bind(Include = "uMissionAchievementID,uAchievementID,iMissionCount")] MissionAchievement missionAchievement) { if (ModelState.IsValid) { missionAchievement.uMissionAchievementID = Guid.NewGuid(); db.MissionAchievements.Add(missionAchievement); await db.SaveChangesAsync(); return(RedirectToAction("Index")); } ViewBag.uAchievementID = new SelectList(db.Achievements, "uAchievementID", "sName", missionAchievement.uAchievementID); return(View(missionAchievement)); }
// GET: MissionAchievements/Details/5 public async Task <ActionResult> Details(Guid?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } MissionAchievement missionAchievement = await db.MissionAchievements.FindAsync(id); if (missionAchievement == null) { return(HttpNotFound()); } return(View(missionAchievement)); }
// GET: MissionAchievements/Edit/5 public async Task <ActionResult> Edit(Guid?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } MissionAchievement missionAchievement = await db.MissionAchievements.FindAsync(id); if (missionAchievement == null) { return(HttpNotFound()); } ViewBag.uAchievementID = new SelectList(db.Achievements, "uAchievementID", "sName", missionAchievement.uAchievementID); return(View(missionAchievement)); }
public static MissionAchievement CreateAchievement(Dictionary <string, object> achievementData) { string missionAchievementType = (string)achievementData["Type"]; MissionAchievement newMissionAchievement = null; if (missionAchievementType == "score") { newMissionAchievement = new ScoreAchievement(); } else if (missionAchievementType == "shooterWin") { newMissionAchievement = new ShooterWinAchievement(); } else if (missionAchievementType == "shooterEffectBonus") { newMissionAchievement = new ShooterEffectBonusAchievement(); } else if (missionAchievementType == "goalkeeperWin") { newMissionAchievement = new GoalkeeperWinAchievement(); } else if (missionAchievementType == "perfect") { newMissionAchievement = new PerfectAchievement(); } else if (missionAchievementType == "life") { newMissionAchievement = new LifeAchievement(); } else { throw new ArgumentOutOfRangeException("El tipo de objetivo ( " + missionAchievementType + " ) no existe, revisa madafaka"); } newMissionAchievement.LoadData(achievementData); return(newMissionAchievement); }
// Use this for initialization void Start() { if (!MissionManager.instance.HasCurrentMission()) { return; } if (m_primas == null) { // obtener la referencia a los elementos de esta interfaz m_primas = new cntPrima[4]; for (int i = 0; i < m_primas.Length; ++i) { m_primas[i] = transform.FindChild("prima" + (i + 1)).GetComponent <cntPrima>(); } // registrar el refresco de los objetivos ServiceLocator.Request <IShotResultService>().RegisterListener(RefreshEstadoObjetivos); } // inicializar los controles para mostrar las primas { int i = 0; for (; (i < MissionManager.instance.GetMission().Achievements.Count) && (i < m_primas.Length); ++i) { MissionAchievement objetivo = MissionManager.instance.GetMission().Achievements[i]; MissionAchievement objetivoCargado = GameplayService.gameLevelMission.GetAchievements()[i]; m_primas[i] = transform.FindChild("prima" + (i + 1)).GetComponent <cntPrima>(); m_primas[i].Inicializar(objetivo.DescriptionID, objetivo.IsAchieved() || objetivoCargado.IsAchieved()); m_primas[i].gameObject.SetActive(true); } // ocultar los controles restantes for (; i < m_primas.Length; ++i) { m_primas[i].gameObject.SetActive(false); } } }
private void LoadAchievement(string str) { XmlDocument doc = new XmlDocument(); StringReader reader = new StringReader(str); if (doc == null || reader == null) { return; } doc.Load(reader); XmlNode root = doc.SelectSingleNode("AchievementData"); XmlNode achNode = root.SelectSingleNode("Achievements"); XmlNode statsNode = root.SelectSingleNode("Stats"); //Achievements XmlNodeList _AchDataList = ((XmlElement)achNode).GetElementsByTagName("TriggerData"); XmlNodeList _statDataList = ((XmlElement)statsNode).GetElementsByTagName("Data"); int _achCount = _AchDataList.Count; int _statCount = _statDataList.Count; m_Achievements = new AchievementInfo[_achCount]; m_MissionAchs = new MissionAchievement[_achCount]; m_StatNames = new string[1 + _statCount]; m_Stats = new Istat[_achCount]; foreach (XmlNode node in _AchDataList) { XmlElement xe = node as XmlElement; int _achid = PETools.XmlUtil.GetAttributeInt32(xe, "achID"); int _staid = PETools.XmlUtil.GetAttributeInt32(xe, "staID"); Eachievement _achievementID = (Eachievement)_achid; Estat _statID = (Estat)_staid; string _name = PETools.XmlUtil.GetAttributeString(xe, "APIname"); string _desc = PETools.XmlUtil.GetAttributeString(xe, "AchieveDesc"); int _missionid = PETools.XmlUtil.GetAttributeInt32(xe, "MissionID"); MissionAchievement.Emisschedule _accomplishOrGet = (MissionAchievement.Emisschedule)PETools.XmlUtil.GetAttributeInt32(xe, "AccomplishOrGet"); int _protoId = PETools.XmlUtil.GetAttributeInt32(xe, "ItemProtoId"); m_Achievements[_achid] = (new AchievementInfo(_achievementID, _statID, _name, _desc, _protoId)); m_StatNames[_staid] = ""; TriggerStat mstat = new TriggerStat(); mstat.SetGoal(1); m_Stats[_achid] = mstat; m_MissionAchs[_achid] = new MissionAchievement(_missionid, _accomplishOrGet); } //stats foreach (XmlNode node in _statDataList) { XmlElement xe = node as XmlElement; int _id = PETools.XmlUtil.GetAttributeInt32(xe, "ID"); int _achid = PETools.XmlUtil.GetAttributeInt32(xe, "achID"); string _name = PETools.XmlUtil.GetAttributeString(xe, "StatName"); int _goal = PETools.XmlUtil.GetAttributeInt32(xe, "Goal"); if (m_Stats.Length > _achid && m_Stats[_achid] != null) { m_Stats[_achid].SetGoal(_goal); } m_StatNames[_id] = _name; } }