Esempio n. 1
0
    public Simulation()
    {
        Floor = new Floor(this, floorWidth, floorHeight);
        machineFactory = new MachineFactory(this);
        supplyContractFactory = new ContractFactory(false);
        deliveryContractFactory = new ContractFactory(true);

        //Populate machine shop
        for(int i = 0; i < machineShopSizeLimit; i++)
        {
            MachineShop.Add (machineFactory.GetMachineForShop());
        }

        //Populate contracts
        for(int i = 0; i < contractShopSizeLimit; i++)
        {
            SupplyShop.Add(supplyContractFactory.GetContractForShop());
            DeliveryShop.Add(deliveryContractFactory.GetContractForShop());
        }

        //Create contract slots
        Vector2[] slotPositions = new Vector2[]
        {
            new Vector2(1, -0.666f),
            new Vector2(3, -0.666f),
            new Vector2(5, -0.666f),
            new Vector2(7, -0.666f),
            new Vector2(1, 8.666f),
            new Vector2(3, 8.666f),
            new Vector2(5, 8.666f),
            new Vector2(7, 8.666f)
        };
        for (int i = 0; i < contractSlotLimit; i++)
        {
            ContractSlot slot = new ContractSlot();
            slot.FloorPosition = slotPositions[i];
            ContractSlots.Add(slot);
        }
    }
Esempio n. 2
0
 public ContractDock(ContractSlot slot)
     : base(slot, slot.Contract is DeliveryContract ? DockType.In : DockType.Out)
 {
     Slot = slot;
     OnGrabberDocked = slot.Contract.OnGrabberDocked;
 }