public void AddQuest(ModelQuest quest, int postion = -1) { if (postion == -1 || postion == Quests.Count) Quests.Add(quest); else Quests.Insert(postion, quest); OnQuestAdded(quest); }
public ProxyQuest(ModelQuest quest) { Stages = new ObservableCollection<ProxyStage>(); mQuest = quest; foreach (ModelStage stage in mQuest.Stages) { ProxyStage ps = new ProxyStage(stage); Stages.Add(ps); } }
void OnStageRemoved(ModelQuest quest, ModelStage stage) { stage.Quest = null; if (StageRemoved != null) { QuestEvtArgs e = new QuestEvtArgs(); e.Quest = quest; e.Story = this; e.Stage = stage; StageRemoved(this, e); } }
void OnQuestRemoved(ModelQuest quest) { quest.Story = null; if (QuestRemoved != null) { QuestEvtArgs e = new QuestEvtArgs(); e.Quest = quest; e.Story = this; QuestRemoved(this, e); } }
public void Load(XElement storyElement) { foreach (XElement questElement in storyElement.Elements("Quest")) { ModelQuest quest = new ModelQuest(); Quests.Add(quest); XAttribute nameAttr = questElement.Attribute("Name"); XAttribute titleAttr = questElement.Attribute("Title"); XAttribute startScriptAttr = questElement.Attribute("StartScript"); XAttribute finishScriptAttr = questElement.Attribute("FinishScript"); XAttribute updateScriptAttr = questElement.Attribute("UpdateScript"); quest.ID = nameAttr.Value; quest.Title = titleAttr.Value; if (startScriptAttr != null) { quest.OnStart = startScriptAttr.Value; } if (finishScriptAttr != null) { quest.OnFinish = finishScriptAttr.Value; } if (updateScriptAttr != null) { quest.OnUpdate = updateScriptAttr.Value; } foreach (XElement stageElement in questElement.Elements("Stage")) { ModelStage stage = new ModelStage(); quest.Stages.Add(stage); XAttribute idAttr = stageElement.Attribute("ID"); XAttribute textAttr = stageElement.Attribute("Text"); XAttribute stageStartScriptAttr = stageElement.Attribute("StartScript"); XAttribute stageUpdateScriptAttr = stageElement.Attribute("UpdateScript"); stage.ID = int.Parse(idAttr.Value.ToString()); stage.Text = textAttr.Value; if (stageStartScriptAttr != null) { stage.OnStart = stageStartScriptAttr.Value; } if (stageUpdateScriptAttr != null) { stage.OnUpdate = stageUpdateScriptAttr.Value; } } } }
public void AddQuest(ModelQuest quest, int postion = -1) { if (postion == -1 || postion == Quests.Count) { Quests.Add(quest); } else { Quests.Insert(postion, quest); } OnQuestAdded(quest); }
public void Load(XElement storyElement) { foreach (XElement questElement in storyElement.Elements("Quest")) { ModelQuest quest = new ModelQuest(); Quests.Add(quest); XAttribute nameAttr = questElement.Attribute("Name"); XAttribute titleAttr = questElement.Attribute("Title"); XAttribute startScriptAttr = questElement.Attribute("StartScript"); XAttribute finishScriptAttr = questElement.Attribute("FinishScript"); XAttribute updateScriptAttr = questElement.Attribute("UpdateScript"); quest.ID = nameAttr.Value; quest.Title = titleAttr.Value; if (startScriptAttr != null) quest.OnStart = startScriptAttr.Value; if (finishScriptAttr != null) quest.OnFinish = finishScriptAttr.Value; if (updateScriptAttr != null) quest.OnUpdate = updateScriptAttr.Value; foreach (XElement stageElement in questElement.Elements("Stage")) { ModelStage stage = new ModelStage(); quest.Stages.Add(stage); XAttribute idAttr = stageElement.Attribute("ID"); XAttribute textAttr = stageElement.Attribute("Text"); XAttribute stageStartScriptAttr = stageElement.Attribute("StartScript"); XAttribute stageUpdateScriptAttr = stageElement.Attribute("UpdateScript"); stage.ID = int.Parse(idAttr.Value.ToString()); stage.Text = textAttr.Value; if (stageStartScriptAttr != null) stage.OnStart = stageStartScriptAttr.Value; if (stageUpdateScriptAttr != null) stage.OnUpdate = stageUpdateScriptAttr.Value; } } }
public QuestEditorWindow() { InitializeComponent(); CommandBindings.Add(new CommandBinding(ApplicationCommands.Delete, ExecutedDelete, CanExecuteDelete)); CommandBindings.Add(new CommandBinding(AddStage, ExecutedAddStage, CanExecuteAddStage)); CommandBindings.Add(new CommandBinding(AddQuest, ExecutedAddQuestCommand, CanExecuteAddQuestCommand)); ModelQuest q = new ModelQuest() { Title = "Test quest", ID = "test" }; Proxy.ProxyStory s = new Proxy.ProxyStory(mStory); s.AddQuest(s.CreateNewQuest()); s.AddQuest(s.CreateNewQuest()); s.AddQuest(s.CreateNewQuest()); s.AddQuest(s.CreateNewQuest()); mStoryTreeView.DataContext = s; mProxyStory = s; // CommandBindings.Add(new CommandBinding(QuestEditorWindow.AddQuest, ExecutedAddQuestCommand, CanExecuteAddQuestCommand)); }
public void AddStage(ModelQuest quest, ModelStage stage) { quest.Stages.Add(stage); OnStageAdded(quest, stage); }
void OnStageRemoved(ModelQuest quest, ModelStage stage) { stage.Quest = null; if (StageRemoved != null) { QuestEvtArgs e = new QuestEvtArgs(); e.Quest = quest; e.Story = this; e.Stage = stage; StageRemoved(this, e); } }
void OnQuestRemoved(ModelQuest quest) { quest.Story = null; if (QuestRemoved != null) { QuestEvtArgs e = new QuestEvtArgs(); e.Quest = quest; e.Story = this; QuestRemoved(this, e); } }
public void RemoveStage(ModelQuest quest, ModelStage stage) { quest.Stages.Remove(stage); OnStageRemoved(quest, stage); }
public void RemoveQuest(ModelQuest quest) { Quests.Remove(quest); OnQuestRemoved(quest); }
public void RemoveStage(ModelQuest quest, ModelStage stage) { quest.Stages.Remove(stage); OnStageRemoved(quest, stage); }
public void AddStage(ModelQuest quest, ModelStage stage) { quest.Stages.Add(stage); OnStageAdded(quest, stage); }
public void RemoveQuest(ModelQuest quest) { Quests.Remove(quest); OnQuestRemoved(quest); }