public override void ApplyActionEffects(WorldModelDST worldModel) { worldModel.Cycle += this.Duration; worldModel.IncreaseHunger(1); string usedfuel = worldModel.Fuel[0].Item1; worldModel.RemoveFromPossessedItems(usedfuel, 1); worldModel.RemoveFromFuel(usedfuel); worldModel.Walter.Position = worldModel.GetNextPosition(this.Target, "fire"); ActionDST action; if (usedfuel == "twigs") { if (!worldModel.Possesses("twigs", 2)) { worldModel.RemoveAction("Build_torch"); worldModel.RemoveAction("Build_pickaxe"); } if (!worldModel.Possesses("twigs", 1)) { worldModel.RemoveAction("Build_axe"); } } else if (usedfuel == "log") { if (!worldModel.Possesses("log", 2)) { worldModel.RemoveAction("Build_firepit"); worldModel.RemoveAction("Build_campfire"); } } else if (usedfuel == "cutgrass") { if (!worldModel.Possesses("cutgrass", 3)) { worldModel.RemoveAction("Build_campfire"); } if (!worldModel.Possesses("cutgrass", 2)) { action = new Build("torch"); worldModel.RemoveAction("Build_torch"); } } }