Пример #1
0
 public Bag(CrossGate p)
 {
     CG = p;
     for (int i = 0; i <= 19; i++)
     {
         item[i] = new item(CG, i);
     }
 }
 public ItemList(CrossGate cg) : base(cg)
 {
     _items = new List <Item>();
     for (var i = 0; i < 40; i++)
     {
         _items.Add(new Item(Memo, i));
     }
 }
Пример #3
0
 public Bag(CrossGate p)
 {
     CG = p;
     for (int i = 0; i <= 19; i++)
     {
         item[i] = new item(CG, i);
     }
 }
Пример #4
0
        public static Script GetNewTownInstance(CrossGate cg)
        {
            //57137 新村外,57138新村,57139新村医院

            var destinationCondition = new MoveCondition(351, 199, 57137, 352, 199);

            var g1 = new MoveCondition(57137, 351, 199);
            // g1.Description = "新城外任何一点满足,走到目的地351,199";
            var g2 = new MoveCondition(57138, 53, 49);
            //g2.Description = "新村内任意位置走到53,49,中间折返点";
            var g3 = new MoveCondition(53, 49, 57138, 51, 38);
            //g3.Description = "从折返点出村";
            var g4 = new MoveCondition(57139, 8, 14);
            //g4.Description = "医院里任意位置出医院";



            var nurseCondition = new MoveCondition(17, 12, 57139, 17, 10);
            //nurseCondition.Description = "补血补蓝";

            var b0 = new MoveCondition(57137, 351, 202);
            //b0.Description = "新村外任意位置回村";
            var b1 = new MoveCondition(351, 202, 57137, 351, 203);
            //b0.Description = "进村";
            var b2 = new MoveCondition(57138, 53, 49);
            //b2.Description = "新村内任意位置走到53,49,中间折返点";
            var b3 = new MoveCondition(53, 49, 57138, 58, 53);
            //b3.Description = "折返点进医院";
            var b4 = new MoveCondition(57139, 17, 12);
            //b4.Description = "医院里任意位置走到资深护士";

            var b5 = new MoveCondition(57150, 7, 17);

            var script = new Script(cg)
            {
                DestinationCondition = destinationCondition
            };

            script.GoConditions.Add(destinationCondition);
            script.GoConditions.Add(g1);
            script.GoConditions.Add(g2);
            script.GoConditions.Add(g3);
            script.GoConditions.Add(g4);

            script.NurseCondition = nurseCondition;
            script.BackConditions.Add(nurseCondition);
            script.BackConditions.Add(b1);
            script.BackConditions.Add(b2);
            script.BackConditions.Add(b3);
            script.BackConditions.Add(b4);
            script.BackConditions.Add(b0);
            script.BackConditions.Add(b5);
            return(script);
        }
Пример #5
0
 public Role(CrossGate p)
 {
     CG = p;
 }
Пример #6
0
 public Pet(CrossGate p,int position)
 {
     CG = p;N = position;
 }
Пример #7
0
 public item(CrossGate p, int i)
 {
     CG       = p;
     position = i;
 }
Пример #8
0
 public PetCatch(CrossGate cg) : base(cg)
 {
 }
Пример #9
0
 public item(CrossGate p, int i)
 {
     CG = p;
     position = i;
 }
Пример #10
0
 public Calls(CrossGate p)
 {
     CG = p;
 }
Пример #11
0
 private Script(CrossGate cg) : base(cg)
 {
 }
Пример #12
0
 public AutoCombat(CrossGate cg) : base(cg)
 {
 }
Пример #13
0
 public AutoCure(CrossGate cg) : base(cg)
 {
 }
Пример #14
0
 public FuntionThread(CrossGate p)
 {
     CG = p;
     t  = new Thread(new ThreadStart(ThreadFuntion));
     t.Start();
 }
Пример #15
0
 public Producer(CrossGate cg) : base(cg)
 {
 }
Пример #16
0
 public AutoChange(CrossGate cg) : base(cg)
 {
 }
Пример #17
0
 //S_K 3 1 9 123123 0     S_K 3 0 a 123123 0     名片第几个  第几个宠物  第几个物品
 public Poster(CrossGate cg) : base(cg)
 {
 }
Пример #18
0
 public AutoWalk(CrossGate cg) : base(cg)
 {
 }
Пример #19
0
 public SpeedFight(CrossGate p)
 {
     CG = p;
 }
Пример #20
0
 public Scripts(CrossGate v)
 {
     CG = v;
 }
    public void AddGate(GateType _type, CellCoordinates _coordinates, ObjectOrientation _orientation, GameObject _selfGameObject, int _value = 0, bool _isSwap = false)
    {
        //Check if an object is already there
        GridObject gridObject = gridManager.GetCell(_coordinates);

        if (gridObject != null)
        {
            ClearCell(_coordinates, _isSwap);
            gridObject = null;
        }

        switch (_type)
        {
        case GateType.Add:
        {
            gridObject = new AddGate(_coordinates, _orientation);
            break;
        }

        case GateType.Subtract:
        {
            gridObject = new SubtractGate(_coordinates, _orientation);
            break;
        }

        case GateType.Multiply:
        {
            gridObject = new MultiplyGate(_coordinates, _orientation);
            break;
        }

        case GateType.Divide:
        {
            gridObject = new DivideGate(_coordinates, _orientation);
            break;
        }

        case GateType.IncrementDecrement:
        {
            gridObject = new IncrementDecrementGate(_coordinates, _orientation, _value);
            break;
        }

        case GateType.Cross:
        {
            gridObject = new CrossGate(_coordinates, _orientation);
            break;
        }

        case GateType.Replicate:
        {
            gridObject = new ReplicateGate(_coordinates, _orientation);
            break;
        }
        }

        gridManager.InsertObject(gridObject);
        placedGridObjects.Add(gridObject, _selfGameObject);

        //Create Visual Wire
        Gate gate  = (Gate)gridObject;
        uint index = 0;

        foreach (CellCoordinates inputCoords in gate.Inputs)
        {
            GridObject inputGridObject = gridManager.GetCell(inputCoords);
            if (inputGridObject != null)
            {
                if (inputGridObject.ObjectType != GridObjectType.Wire)
                {
                    if (IsConnected(false, inputCoords, gridObject))
                    {
                        wireVisualManager.CreateWireAndLink(inputCoords, gate.GetCoordinateForInput(index));
                    }
                }
            }
            index++;
        }

        index = 0;
        foreach (CellCoordinates outputCoords in gate.Outputs)
        {
            GridObject outputGridObject = gridManager.GetCell(outputCoords);
            if (outputGridObject != null)
            {
                if (outputGridObject.ObjectType != GridObjectType.Wire)
                {
                    if (IsConnected(true, outputCoords, gridObject))
                    {
                        wireVisualManager.CreateWireAndLink(_coordinates, outputCoords);
                    }
                }
            }
            index++;
        }

        UpdateGiblets(_coordinates, true);
    }
Пример #22
0
 public Movement(CrossGate p)
 {
     CG = p;
 }
Пример #23
0
 public MoveScript(CrossGate cg) : base(cg)
 {
 }
Пример #24
0
 public AutoFight(CrossGate p)
 {
     CG = p;
 }
Пример #25
0
 public Pet(CrossGate p, int position)
 {
     CG = p; N = position;
 }
Пример #26
0
 public AutoFood(CrossGate cg) : base(cg)
 {
 }
Пример #27
0
 public AutoFight(CrossGate p)
 {
     CG = p;
 }
Пример #28
0
 public AutoNurse(CrossGate cg) : base(cg)
 {
 }
Пример #29
0
 public Scripts(CrossGate v)
 {
     CG = v;
 }
Пример #30
0
    public bool IsGridObjectValid(Vector2 _position, VisualGate _gate, bool _convertToCanvas)
    {
        GridObject gridObject = null;
        Vector2Int oGrid      = Vector2Int.zero;

        if (GetGridCoordinates(_position, ref oGrid, _convertToCanvas))
        {
            CellCoordinates cell = new CellCoordinates((uint)oGrid.x, (uint)oGrid.y);

            switch (_gate.gateType)
            {
            case GateType.Add:
            {
                gridObject = new AddGate(cell, _gate.objectOrientation);
                break;
            }

            case GateType.Subtract:
            {
                gridObject = new SubtractGate(cell, _gate.objectOrientation);
                break;
            }

            case GateType.Multiply:
            {
                gridObject = new MultiplyGate(cell, _gate.objectOrientation);
                break;
            }

            case GateType.Divide:
            {
                gridObject = new DivideGate(cell, _gate.objectOrientation);
                break;
            }

            case GateType.IncrementDecrement:
            {
                gridObject = new IncrementDecrementGate(cell, _gate.objectOrientation);
                break;
            }

            case GateType.Cross:
            {
                gridObject = new CrossGate(cell, _gate.objectOrientation);
                break;
            }

            case GateType.Replicate:
            {
                gridObject = new ReplicateGate(cell, _gate.objectOrientation);
                break;
            }
            }

            foreach (CellCoordinates coordinates in gridObject.Coordinates)
            {
                if (coordinates.X < 1 || coordinates.Y < 1 || coordinates.X > gridWidth || coordinates.Y > gridHeight)
                {
                    return(false);
                }
            }

            return(true);
        }

        return(false);
    }
Пример #31
0
 public SpeedUp(CrossGate p)
 {
     CG = p;
     t  = new Thread(new ThreadStart(ThreadChangeSpeed));
     t.Start();
 }
Пример #32
0
 public Movement(CrossGate p)
 {
     CG = p;
 }
Пример #33
0
 public Calls(CrossGate p)
 {
     CG = p;
 }
Пример #34
0
 public Role(CrossGate p)
 {
     CG = p;
 }
Пример #35
0
 public Combat(CrossGate cg) : base(cg)
 {
     Units = new UnitList(cg.Memo);
 }
Пример #36
0
 public FuntionThread(CrossGate p)
 {
     CG = p;
     t = new Thread(new ThreadStart(ThreadFuntion));
     t.Start();
 }