public XLSColumnSelector(XLSStructure currentXLSStructure, BehaviourTypes behaviour)
        {
            initialize = true;

            CurrentXLSStructure = currentXLSStructure;
            _behaviour          = behaviour;

            InitializeComponent();

            var tmp = CurrentXLSStructure.CurrentWorkBookNum;

            cmbSheet.DataSource = CurrentXLSStructure.WorkBooks;

            CurrentXLSStructure.CurrentWorkBookNum = tmp;

            if (CurrentXLSStructure.CurrentWorkBookNum != 0)
            {
                cmbSheet.SelectedIndex = CurrentXLSStructure.CurrentWorkBookNum;
                cmbField.Enabled       = cmbSheet.Enabled = true;
            }

            lblPath.Text = CurrentXLSStructure.FileName;

            cmbField.Visible = label1.Visible = cmbField.Enabled = _behaviour == BehaviourTypes.ColumnSelect;
            txtIgnore.Text   = CurrentXLSStructure.IgnoreLine.ToString();

            initialize = false;
        }
예제 #2
0
        public static Pet MakeRandomPet()
        {
            List <string> names = new List <string>
            {
                "Loki",
                "Rex",
                "Tyson",
                "Bandit",
                "Max",
                "Tomo",
                "Perro",
                "Mimo",
                "Ginger"
            };
            string   randomName   = names[generator.Next(names.Count)];
            int      randomYear   = generator.Next(DateTime.Today.Year - 10, DateTime.Today.Year + 1);
            int      randomMonth  = generator.Next(1, DateTime.Today.Month + 1);
            int      randomDay    = generator.Next(1, DateTime.Today.Day + 1);
            DateTime randomDate   = new DateTime(randomYear, randomMonth, randomDay);
            decimal  randomWeight = ((decimal)generator.Next(100, 2001)) / 100;

            if (randomYear >= DateTime.Today.Year)
            {
                randomWeight /= 10;
            }
            BehaviourTypes randomBehaviour = (BehaviourTypes)generator.Next(2);
            EarTypes       randomEarType   = (EarTypes)generator.Next(2);

            return(new Dog(randomName, randomWeight, randomDate, randomBehaviour, randomEarType));
        }
예제 #3
0
    private void EnactBehaviour(BehaviourTypes behaviour)
    {
        interactObject.ButtonInteract();
        switch (behaviour)
        {
        case BehaviourTypes.ActivateObject:
            ActivateObject(interactObject);
            break;

        case BehaviourTypes.DeactivateObject:
            DeActivateObject(interactObject);
            break;

        case BehaviourTypes.OpenDoor:
            //OpenDoor(interactObject);
            break;

        case BehaviourTypes.LowerLadder:
            interactObject.gameObject.GetComponent <Ladder>().Activate();
            break;

        case BehaviourTypes.ActivatePad:
            interactObject.gameObject.GetComponent <PullPush>().Activate();
            break;
        }
    }
    protected virtual void DrawBehaviourPopup(Rect rect)
    {
        Type type        = Target.Behaviour?.GetType();
        int  optionIndex = type == null ? BehaviourOptions.Length - 1 : BehaviourTypes.IndexOf(type);

        rect.height = EditorGUIUtility.singleLineHeight;
        int newIndex = EditorGUI.Popup(rect, optionIndex, BehaviourOptions);

        if (newIndex != optionIndex)
        {
            SwitchBehaviourType(newIndex);
        }

        void SwitchBehaviourType(int typeIndex)
        {
            if (typeIndex >= BehaviourTypes.Count)
            {
                RemoveObject(Target.Behaviour);
                Target.Behaviour = null;
            }
            else
            {
                if (Target.Behaviour != null)
                {
                    RemoveObject(Target.Behaviour);
                }

                PatternBehaviour newInstance = CreateBehaviour(typeIndex);

                Target.Behaviour = newInstance;
                AddObject(newInstance);
            }
        }
    }
예제 #5
0
    private void EnactSecondaryBehaviour(BehaviourTypes behaviour)
    {
        Debug.Log("Starting secondary task");
        secondaryObject.ButtonInteract();
        switch (behaviour)
        {
        case BehaviourTypes.ActivateObject:
            ActivateObject(secondaryObject);
            break;

        case BehaviourTypes.DeactivateObject:
            DeActivateObject(secondaryObject);
            break;

        case BehaviourTypes.LowerLadder:
            secondaryObject.gameObject.GetComponent <Ladder>().Activate();
            break;

        case BehaviourTypes.ActivatePad:
            secondaryObject.gameObject.GetComponent <PullPush>().Activate();
            break;
        }
    }
예제 #6
0
 public Dog(string name, decimal weight, DateTime birthDate, BehaviourTypes behaviour, EarTypes ear) : base(name, weight, birthDate)
 {
     Behaviour = behaviour;
     Ears      = ear;
 }