Exemple #1
0
 public void AssignTo(CityOffice nextOwner)
 {
     if (nextOwner != null && nextOwner != owners.Peek())
     {
         owners.Push(nextOwner);
     }
 }
Exemple #2
0
 public CityBill(CityOffice givenOwner, BillAction requestedAction, BillObject requestedTarget)
 {
     owners = new Stack <CityOffice>();
     owners.Push(givenOwner);
     state  = BillState.Proposed;
     action = requestedAction;
     target = requestedTarget;
 }
Exemple #3
0
    public void AssignBack()
    {
        if (owners.Count <= 1)
        {
            return;
        }

        CityOffice currentOwner = owners.Pop();
        CityOffice prevOwner    = owners.Peek();

        if (prevOwner != null && !prevOwner.bills.Contains(this))
        {
            prevOwner.bills.Enqueue(this);
        }
        else
        {
            owners.Push(currentOwner);
        }
    }
Exemple #4
0
 public StructureRequest(CityOffice requester, BillObject requestedType, Int2 requestedSize) : base(requester, CityBill.BillAction.Request, requestedType)
 {
     size = requestedSize;
 }