private TaskState Pickup(Dwarf d, float dt) { WorldObject obj = d.GetActionPasture().WithdrawWorldObject(d.GetActionWorldObject()); d.CarryWorldObject(obj); return TaskState.Success; }
private TaskState Pickup(Dwarf d, float dt) { if (d.GetActionbuilding().GetCraftSlot() == null) throw new Exception("If this happes, it might be a bug. If it happens very rarely, just make the task fail. It might fail infinently.. That might be a problem"); WorldObject m = d.GetActionbuilding().TakeCraftSlot(); d.CarryWorldObject(m); return TaskState.Success; }
private TaskState Pickup(Dwarf d, float dt) { WorldObject m = d.GetActionbuilding().WithdrawWorldObject(d.GetActionMapElementType(), d.GetActionLevel()); if (m == null) return TaskState.Fail; d.CarryWorldObject(m); d.SetActionBuilding(d.GetPrevActionBuilding()); return TaskState.Success; }
private TaskState Pickup(Dwarf d, float dt) { WorldObject me = d.GetActionWorldObject(); //if ((int)d.Position.X != me.Position.X || (int)d.Position.Y != me.Position.Y) // throw new Exception("Dwarf not in place"); Console.WriteLine("Pickup: " + d.Id + " - " + d.GetActionWorldObject().Position.X + ", " + d.GetActionWorldObject().Position.Y); d.GetActionMapElement().RemoveFromMap(); d.CarryWorldObject(d.GetActionWorldObject()); return TaskState.Success; }
private TaskState Pickup(Dwarf d, float dt) { WorldObject food = d.GetActionbuilding().WithdrawAnyFood(); if (food == null) { if (WorldMap.Instance.GetDeposWithFood().Count == 0) return TaskState.PersonalFail; return TaskState.PersonalFailTryBehaviorAgain; } d.CarryWorldObject(food); return TaskState.Success; }
private TaskState Harvest(Dwarf d, float dt) { CropBase crop = (CropBase)d.GetActionWorldObject(); d.CarryWorldObject(crop.TakeHarvest()); return TaskState.Success; }