Beispiel #1
0
 void Update()
 {
     if (ActiveCanvas == MainCanvas)
     {
     }
     if (ActiveCanvas == GameCanvas)
     {
     }
     if (ActiveCanvas == SearchingCanvas)
     {
     }
     if (ActiveCanvas == SpellsCanvas)
     {
         if (TREE != null && TREE.activeInHierarchy == true)
         {
             if (Input.GetKeyDown(KeyCode.Escape))
             {
                 if (ChoosingOff != null)
                 {
                     ChoosingOff.transform.localScale = new Vector3(1, 1, 1);
                 }
                 if (ChoosingDeff != null)
                 {
                     ChoosingDeff.transform.localScale = new Vector3(1, 1, 1);
                 }
                 TREE.SetActive(false);
             }
         }
     }
 }
Beispiel #2
0
 public void InsertTree(TREE Tree, string fk)
 {
     Tree.TREEID = Guid.NewGuid().ToString();
     Tree.PLOTID = fk;
     _databaseHelper.InsertTree(Tree);
     _databaseHelper.SetPlotSynch(Tree.PLOTID);
 }
        public bool IsTreeNumUnique(TREE _tree)
        {
            // for examinginif a unique tree number is being saved
            string qry;

            if (_tree.TREEID != null)
            {
                qry = "select count(TREEID) from TREE where PLOTID = '" + _tree.PLOTID + "' and TREENUM = " + _tree.TREENUM + " and TREEID <> '" + _tree.TREEID + "'";
            }
            else
            {
                qry = "select count(TREEID) from TREE where PLOTID = '" + _tree.PLOTID + "' and TREENUM = " + _tree.TREENUM;
            }
            try
            {
                var treenum = sqliteconnection.ExecuteScalar <int>(qry);
                if (treenum > 0)
                {
                    return(false);
                }
                else
                {
                    return(true);
                }
            }
            catch (Exception e)
            {
                var myerror = e.Message; // erro
                return(false);
            }
        }
Beispiel #4
0
    public void Setup(string[] joints, string[] args, TREE tree)
    {
        makeDefaults (joints.Length);
        root = tree.gameObject;

        for (int i = 0; i < joints.Length; i++) {

            List<int[]> firstList = TREEUtils.makeList  (joints[i], tree.GetComponent<TREE>());
            List<Vector3> initRotations = new List<Vector3>();

            for (int p = 0; p < firstList.Count; p++) {
                GameObject g = TREEUtils.findJoint (firstList[p], 0, root.transform.GetChild (0).gameObject);
                initRotations.Add(g.transform.localEulerAngles);
            }

            initialRotation.Add (initRotations);
            SelectedJoints.Add(firstList);

            string[] arg = args[i].Split (new string[] { "," }, System.StringSplitOptions.None);
            for (int j = 0; j < arg.Length; j++) {
                string[] a = arg[j].Split (new string[] { ":" }, System.StringSplitOptions.None);
                if(a.Length>1)
                    Transforms[i] [a [0]] = float.Parse (a [1]);
            }
        }
    }
        public TreeDetailsViewModel(INavigation navigation, string selectedTreeID)
        {
            _navigation     = navigation;
            _tree           = new TREE();
            _tree.TREEID    = selectedTreeID;
            _treeRepository = new TreeRepository();

            UpdateTreeCommand     = new Command(async() => await UpdateTree());
            DeleteTreeCommand     = new Command(async() => await DeleteTree());
            CommentsCommand       = new Command(async() => await ShowComments());
            ResetCommand          = new Command(async() => await ResetValues());
            StemMapCommand        = new Command(async() => await ShowStemMap());
            DeformityCommand      = new Command(async() => await ShowDeformity());
            AgeCommand            = new Command(async() => await ShowAge());
            ListSpecies           = PickerService.SpeciesItems().OrderBy(c => c.ID).ToList();
            ListVigour            = PickerService.VigourItems().OrderBy(c => c.NAME).ToList();
            ListCrownDamage       = PickerService.CrownDamageItems().OrderBy(c => c.NAME).ToList();
            ListDefoliatingInsect = PickerService.DefoliatingInsectItems().OrderBy(c => c.NAME).ToList();
            ListFoliarDisease     = PickerService.FoliarDiseaseItems().OrderBy(c => c.NAME).ToList();
            ListBarkRetention     = PickerService.BarkRetentionItems().OrderBy(c => c.NAME).ToList();
            ListWoodCondition     = PickerService.WoodConditionItems().OrderBy(c => c.NAME).ToList();
            ListMortalityCause    = PickerService.MortalityCauseItems().OrderBy(c => c.NAME).ToList();
            ListDecayClass        = PickerService.DecayClassItems().OrderBy(c => c.NAME).ToList();
            ListCrownPosition     = PickerService.CrownPositionItems().OrderBy(c => c.NAME).ToList();
            ListCrownClass        = PickerService.CrownClassItems().OrderBy(c => c.NAME).ToList();
            ListStemQuality       = PickerService.StemQualityItems().OrderBy(c => c.NAME).ToList();

            FetchTreeDetails();
            IsChanged             = false;
            OnAppearingCommand    = new Command(() => OnAppearing());
            OnDisappearingCommand = new Command(() => OnDisappearing());
        }
Beispiel #6
0
        public List <TreeDTO> GetFullTreeSchema(string tableName)
        {
            var tableNameParam = new SqlParameter
            {
                ParameterName = "@TableName",
                Value         = tableName
            };

            try
            {
                Database.EnsureCreated();
                Database.OpenConnection();

                return(TREE.FromSqlRaw("EXEC sp_GetFullTreeSchema @TableName={0}", tableNameParam.Value).AsEnumerable().Select(x => new TreeDTO {
                    UserID = x.USERID,
                    UserName = x.USERNAME,
                    FullName = x.FULLNAME,
                    PARENTID = x.PARENTID,
                    SponsorId = x.SPONSORID == null ? 0 : (int)x.SPONSORID,
                    Depth = x.DEPTH
                }).ToList());
            }
            catch (Exception ex)
            {
                throw new ArgumentException(ex.Message);
            }
            finally
            {
                Database.CloseConnection();
            }
        }
Beispiel #7
0
 public void DeleteTree(TREE _table)
 {
     //           _databaseHelper.DeleteTree(ID);
     _table.LastModified = System.DateTime.UtcNow;
     _table.IsDeleted    = "Y";
     _databaseHelper.UpdateTree(_table);
     _databaseHelper.SetPlotSynch(_table.PLOTID);
 }
        public BHAVContainer(BHAV target, EditorScope scope)
        {
            Scope          = scope;
            EditTarget     = target;
            EditTargetTree = scope.ActiveTree;

            Init();
            HitTest = ListenForMouse(new Rectangle(Int32.MinValue / 2, Int32.MinValue / 2, Int32.MaxValue, Int32.MaxValue), new UIMouseEvent(DragMouseEvents));
        }
Beispiel #9
0
 public void ActivateDeffTree()
 {
     if (TREE != null)
     {
         TREE.SetActive(false);
     }
     DeffTreeGameObject.SetActive(true);
     TREE = DeffTreeGameObject;
 }
 // Insert new to DB
 public void InsertTree(TREE tree)
 {
     try
     {
         sqliteconnection.Insert(tree);
     }
     catch (Exception ex)
     { logger.LogWrite(ex.Message); }
 }
 public TreeComments(TREE _tree)
 {
     try
     {
         InitializeComponent();
         _viewmodel          = new TreeCommentsViewModel(Navigation, _tree);
         this.BindingContext = _viewmodel;
     }
     catch (Exception e)
     {
         var myerror = e.Message; // error
                                  //  Log.Fatal(e);
     };
 }
Beispiel #12
0
    // Use this for initialization
    void Start()
    {
        //		testList = new List<List<int>> ();
        List<int> subList = new List<int>();
        subList.Add (1);
        //		testList.Add (subList);
        //		print (testList.ToString());

        string t = "0|-1|-1|-1|-1";
        string f = "0|-1|-1";

        //		tt = new List<int> ();
        //		for (int i = 0; i < 100; i++) {
        //			AddToList (tt);
        //			Debug.Log (tt.Count);
        //		}
        ////
        //		kids = new List<GameObject> ();
        //		Application.targetFrameRate = 30;
        p = this.gameObject.AddComponent<TREE>();
        p.defaultJoint = defaultJoint;
        //		p.Branch ();
        //		p.Branch (p.transform.GetChild (0).transform);
        //		p.generate ("joints","5,5,1","rads","1,1,1","angles","90,30,40","length","5,3,2","divs","1","start","0");
        p.generate ("joints","3,5","rads","2,3","angles","90","length","5","divs","1","start","0");
        testList = TREEUtils.makeList (t, p.GetComponent<TREE>());
        //		testList2 = TREEUtils.makeList (f, p.GetComponent<TREE>());

        //		b = TREEUtils.findJoint  (new int[] {0,0,5,1,3},0,transform.GetChild(0).gameObject);
        //		Debug.Log (b);
        //
        //

        //		one.transform.parent = two.transform;
        //		Dictionary<int[],GameObject> d = p.GetComponent<TREE> ().jointDictionary;
        //		foreach (KeyValuePair<int[],GameObject> item in d) {
        //			Debug.Log (item.Key [0]);
        //		}
        //		TREEUtils.makeChildList (p.gameObject, kids);
        //		Debug.Log (p.gameObject.transform.childCount);
        //		for (int i = 0; i < kids.Count; i++) {
        //			if (kids [i].name == "New Game Object") {
        //				kids [i].GetComponent<Renderer> ().sharedMaterial = mat;
        //				kids [i].transform.localScale = new Vector3 (scalar,scalar,scalar);
        //			}
        //
        //		}

        //		TREEUtils.makeList("24,32,18;90");
    }
Beispiel #13
0
 public bool AllowDelete(TREE _tree)
 {
     //to check if there are related records and prevent deletion
     if (_databaseHelper.GetFilteredStemmapData(_tree.TREEID).Count > 0)
     {
         return(false);
     }
     else if (_databaseHelper.GetFilteredDeformityData(_tree.TREEID).Count > 0)
     {
         return(false);
     }
     else
     {
         return(true);
     }
 }
Beispiel #14
0
 public void Deffensive(Button spell, int index)
 {
     if (ChoosingDeff.name == "Deff1")
     {
         if (DeffType != ChosenDeffType || DeffElement != ChosenDeffElement)
         {
             ResetDeff();
         }
         ChosenDeffType    = DeffType;
         ChosenDeffElement = DeffElement;
         DeffButton1.GetComponentInChildren <Image>().color  = new Color(1, 1, 1, 1);
         DeffButton1.GetComponentInChildren <Image>().sprite = spell.GetComponent <Image>().sprite;
         Deff1 = spell.name;
         ChoosingDeff.transform.localScale = new Vector3(1, 1, 1);
         DeffButton1.GetComponentInChildren <Image>().transform.localScale = new Vector3(spellList.Scale[index].x, spellList.Scale[index].y, 1);
         TREE.SetActive(false);
     }
 }
Beispiel #15
0
 public AddTreeViewModel(INavigation navigation)
 {
     _navigation = navigation;
     //_treeValidator = new TreeValidator();
     _tree                 = new TREE();
     _treeRepository       = new TreeRepository();
     AddCommand            = new Command(async() => await AddTree(""));
     ViewAllCommand        = new Command(async() => await ShowList());
     ListSpecies           = PickerService.SpeciesItems().OrderBy(c => c.NAME).ToList();
     ListVigour            = PickerService.VigourItems().ToList();
     ListCrownDamage       = PickerService.CrownDamageItems().ToList();
     ListDefoliatingInsect = PickerService.DefoliatingInsectItems().ToList();
     ListFoliarDisease     = PickerService.FoliarDiseaseItems().ToList();
     ListBarkRetention     = PickerService.BarkRetentionItems().ToList();
     ListWoodCondition     = PickerService.WoodConditionItems().ToList();
     ListMortalityCause    = PickerService.MortalityCauseItems().ToList();
     ListDecayClass        = PickerService.DecayClassItems().ToList();
 }
Beispiel #16
0
        public EditorScope(GameObject obj, BHAV active)
        {
            Object = obj;
            var GLOBChunks = Object?.Resource.List <GLOB>();

            if (GLOBChunks != null)
            {
                SemiGlobalName = GLOBChunks[0].Name;
                try
                {
                    SemiGlobal = FSO.Content.Content.Get().WorldObjectGlobals.Get(SemiGlobalName).Resource;
                }
                catch
                {
                    //failed to load semiglobal!
                }
            }

            AttributeTable = obj.Resource.Get <STR>(256);
            StackObject    = obj;
            CallerObject   = obj;

            ActiveTree = active.ChunkParent.Get <TREE>(active.ChunkID);
            if (ActiveTree == null)
            {
                ActiveTree = active.RuntimeTree;
            }
            if (ActiveTree == null)
            {
                ActiveTree = TREE.GenerateEmpty(active);
                //remember this tree as the user might start more than one window with it, and they need to be kept in sync
                //don't add to the iff unless a change is made.
                active.RuntimeTree = ActiveTree;
            }
            else
            {
                ActiveTree.CorrectConnections(active);
            }
            BHAVNames = GetLabels(active.ChunkID);
            Active    = active;
        }
        public TreeListViewModel(INavigation navigation, string fk)
        {
            try
            {
                _navigation          = navigation;
                _treeRepository      = new TreeRepository();
                _fk                  = fk;
                _tree                = new TREE();
                AddCommand           = new Command(async() => await ShowAdd(_fk));
                DeleteAllCommand     = new Command(async() => await DeleteAll());
                ShowFilteredCommand  = new Command <TREE>(async(x) => await ShowStemMap(x));
                ShowDeformityCommand = new Command <TREE>(async(x) => await ShowDeformity(x));
                ShowAgesCommand      = new Command <TREE>(async(x) => await ShowAges(x));

                FetchTrees();
            }
            catch (Exception ex)
            {
                var myerror = ex.Message;
            }
        }
Beispiel #18
0
        public TreeAgeViewModel(INavigation navigation, TREE tree)
        {
            _navigation = navigation;
            _tree       = tree;
//            _tree.TREEID = selectedTreeID;
            _treeRepository   = new TreeRepository();
            _dosave           = false;
            UpdateTreeCommand = new Command(async() => await UpdateTree());
            CommentsCommand   = new Command(async() => await ShowComments());

            ListSpecies    = PickerService.SpeciesItems().OrderBy(c => c.NAME).ToList();
            ListCoreStatus = PickerService.CoreStatusItems().OrderBy(c => c.NAME).ToList();
            //FetchTreeDetails();
            //defaults
            if (_tree.HEIGHTTOCORE == 0)
            {
                _tree.HEIGHTTOCORE = 1.3F;
            }
            OnAppearingCommand    = new Command(() => OnAppearing());
            OnDisappearingCommand = new Command(() => OnDisappearing());
        }
Beispiel #19
0
    // Use this for initialization
    void Start()
    {
        d = Dials.Instance;

        d.mult = 10;

        xForm2 = new TreeTransform ();

        p = this.gameObject.AddComponent<TREE>();
        p.setDefaultJoint( defaultJoint);

        TREEUtils.makeDictionary (p.gameObject);

        p.generate (
            "joints",	"1,1",
            "rads",		"3,24",
            "angles",	"120,90",
            "length",	"2.7,5.5",
            "divs",		"1,1",
            "start",	"0,0"
        );

        xForm2.Setup(
            new string[]{
        //				"0|-1|-1|-1|-1|-1|-1",
                "0|-1|-1|-1|-1",
                "0|-1|-1",
            },
            new string[]{
                "ssrz:-1.3,sfrz:4.0,smrz:112,sMult:100.4",
                "ory:6,orx:4",
        //				"ssrx:-1.3,sfrx:1.0,smrx:2,sMult:1.4"
        },p);

        GameObject g = TREEUtils.findJoint (new int[]{0,0,0}, 0, p.gameObject);
    }
        public TreeDetailsViewModel(INavigation navigation, string selectedTreeID)
        {
            _navigation     = navigation;
            _tree           = new TREE();
            _tree.TREEID    = selectedTreeID;
            _treeRepository = new TreeRepository();

            UpdateTreeCommand = new Command(async() => await UpdateTree());
            DeleteTreeCommand = new Command(async() => await DeleteTree());
            CommentsCommand   = new Command(async() => await ShowComments());

            ListSpecies           = PickerService.SpeciesItems().OrderBy(c => c.NAME).ToList();
            ListVigour            = PickerService.VigourItems().ToList();
            ListCrownDamage       = PickerService.CrownDamageItems().ToList();
            ListDefoliatingInsect = PickerService.DefoliatingInsectItems().ToList();
            ListFoliarDisease     = PickerService.FoliarDiseaseItems().ToList();
            ListBarkRetention     = PickerService.BarkRetentionItems().ToList();
            ListWoodCondition     = PickerService.WoodConditionItems().ToList();
            ListMortalityCause    = PickerService.MortalityCauseItems().ToList();
            ListDecayClass        = PickerService.DecayClassItems().ToList();
            ListCrownPosition     = PickerService.CrownPositionItems().ToList();

            FetchTreeDetails();
        }
 public TreeCommentsViewModel(INavigation navigation, TREE _thistree)
 {
     _navigation = navigation;
     _tree       = _thistree;
 }
 // Update Tree Data
 public void UpdateTree(TREE tree)
 {
     sqliteconnection.Update(tree);
 }
 async Task ShowAges(TREE _tree)
 {
     // launch the form - filtered to a specific projectid
     await _navigation.PushAsync(new TreeAge(_tree.TREEID));
 }
Beispiel #24
0
        public AddTreeViewModel(INavigation navigation, string fk)
        {
            _navigation = navigation;
            //_treeValidator = new TreeValidator();
            _tree                 = new TREE();
            _treeRepository       = new TreeRepository();
            _fk                   = fk;
            _tree.PLOTID          = fk;
            AddCommand            = new Command(async() => await AddTree(_fk));
            DeleteTreeCommand     = new Command(async() => await DeleteTree());
            ViewAllCommand        = new Command(async() => await ShowList());
            ListSpecies           = PickerService.SpeciesItems().OrderBy(c => c.ID).ToList();
            ListVigour            = PickerService.VigourItems().OrderBy(c => c.NAME).ToList();
            ListCrownDamage       = PickerService.CrownDamageItems().OrderBy(c => c.NAME).ToList();
            ListDefoliatingInsect = PickerService.DefoliatingInsectItems().OrderBy(c => c.NAME).ToList();
            ListFoliarDisease     = PickerService.FoliarDiseaseItems().OrderBy(c => c.NAME).ToList();
            ListBarkRetention     = PickerService.BarkRetentionItems().OrderBy(c => c.NAME).ToList();
            ListWoodCondition     = PickerService.WoodConditionItems().OrderBy(c => c.NAME).ToList();
            ListMortalityCause    = PickerService.MortalityCauseItems().OrderBy(c => c.NAME).ToList();
            ListDecayClass        = PickerService.DecayClassItems().OrderBy(c => c.NAME).ToList();
            ListCrownPosition     = PickerService.CrownPositionItems().OrderBy(c => c.NAME).ToList();
            ListCrownClass        = PickerService.CrownClassItems().OrderBy(c => c.NAME).ToList();
            ListStemQuality       = PickerService.StemQualityItems().OrderBy(c => c.NAME).ToList();

            CommentsCommand  = new Command(async() => await ShowComments());
            StemMapCommand   = new Command(async() => await ShowStemMap());
            DeformityCommand = new Command(async() => await ShowDeformity());
            AgeCommand       = new Command(async() => await ShowAge());

            OnAppearingCommand    = new Command(() => OnAppearing());
            OnDisappearingCommand = new Command(() => OnDisappearing());

            // DoDefaults
            _tree.HEIGHTTODBH       = 1.3F;
            _tree.DBHIN             = "Y";
            _tree.CROWNIN           = "Y";
            _tree.BARKRETENTIONCODE = 1;
            _tree.WOODCONDITIONCODE = 1;
            if (util.UseDefaultOrigin)
            {
                _tree.TREEORIGINCODE = util.DefaultOrigin;
            }
            if (util.UseDefaultStatus)
            {
                _tree.TREESTATUSCODE = util.DefaultStatus;
            }
            if (util.UseDefaultVSNStatus)
            {
                _tree.VSNSTATUSCODE = util.DefaultVSNStatus;
            }
            if (util.UseDefaultSpecies)
            {
                _tree.SPECIESCODE = util.DefaultSpecies;
            }
            _tree.HEIGHTTODEADTIP             = 999;
            _tree.DIRECTHEIGHTTOCONTLIVECROWN = 0;
            _tree.OCULARHEIGHTTOCONTLIVECROWN = 999;
            if (util.AllowAutoNumber)
            {
                _tree.TREENUMBER = _treeRepository.GetNextNumber(fk);
            }
        }
 public Task DeleteTaskAsync(TREE item)
 {
     return(restService.DeleteAsync(tablename, item.TREEID));
 }
Beispiel #26
0
    // Use this for initialization
    void Start()
    {
        //
        //		string dd = "0|-1|-1|-1|-1|-1|-1";
        //		string t = "0|-1|-1|-1|-1";
        //		string f = "0|-1|-1";

        p = this.gameObject.AddComponent<TREE>();
        p.setDefaultJoint( defaultJoint);

        p.generate (
            "joints",	"1,2",
            "rads",		"3,24",
            "angles",	"120,90",
            "length",	"2.7,4.5",
            "divs",		"1,1",
            "start",	"0,0"
        );

        //		testList = TREEUtils.makeList  (t, p.GetComponent<TREE>());
        //		testList2 = TREEUtils.makeList (f, p.GetComponent<TREE>());
        //
        //		testList3 = TREEUtils.makeList (dd, p.GetComponent<TREE>());
        //
        //		for (int i = 0; i < testList2.Count; i++) {
        //			GameObject g = TREEUtils.findJoint (testList2 [i], 0, transform.GetChild (0).gameObject);
        //			int j = g.GetComponent<Joint> ().joint;
        //			g.transform.Rotate (new Vector3 (0, 0, 8));
        ////			g.transform.localScale = (new Vector3 (1/(j+.1f),1/(j+.1f),1/(j+.1f)));
        //		}
        //
        xForm = new TreeTransform ();
        xForm.Setup(
            new string[]{
        //				"0|-1|-1|-1|-1|-1|-3",
                "0|-1|-1|-1|-1",
                "0|-1|-1",
        //				"0|1|-2",
            },
            new string[]{
                "scale:.95,rx:5,ry:20",
                "scale:.87,ry:20"
        //				"rx:45.5",
        //				"rx:0",
        //				"rx:0,nsrx:.3,nfrx:.133,nmrx:50,nMult:5",
        //				"rx:0,ssrx:1.3,sfrx:.533,smrx:50,sMult:5,sorx:.4",
            },p);
        //		"rx:0,srx:100,sfrx:1,ssrx:100,smrx:0",
        //		"rx:0,srx:10,sfrx:.1,ssrx:-.3,smrx:60",
        //		"rx:0,srx:10,sfrx:.5,ssrx:-.1,smrx:60",
        //
        //		xForm.Update ();

        xForm2 = new TreeTransform ();
        //		xForm2 = new TreeTransform ();
        xForm2.Setup(
            new string[]{
        //				"0|-1|-1|-1|-1|-1|-1",
        //				"0|-1|-1|-1|-1",
                "0|-1|-1",
            },
            new string[]{
        //				"ory:6,orx:5",
                "ory:6",
        //				"ssrx:-1.3,sfrx:1.0,smrx:2,sMult:1.4"
        },p);

        GameObject g = TREEUtils.findJoint (new int[]{0,0,0}, 0, p.gameObject);
    }
 public void UpdateTree(TREE Tree)
 {
     _databaseHelper.UpdateTree(Tree);
 }
Beispiel #28
0
 public TreeAge(TREE tree)
 {
     InitializeComponent();
     this.BindingContext = new TreeAgeViewModel(Navigation, tree);
 }
Beispiel #29
0
    public static List<int[]> _makeList(List<int[]> range, int[] stack, List<int[]> stackArray, int Index, TREE tree)
    {
        testCounter += Time.deltaTime;

        if (Index < range.Count) {

            int i = Index;

            if (range [i].Length > 1 && i != range.Count - 1) {
                for (int j = range [i] [0]; j <= range [i] [range [i].Length-1]; j++) {
                    stack = intPush (stack, j);
                    int[] tempStack = makeTempStack (stack);
                    _makeList (range, tempStack, stackArray, i + 1, tree);
                    stack = intPop (stack);
                }
            }

            else if(range[i][0] == -1 && i % 2 == 0 && i != range.Count-1){

                int[] tempStack = makeTempStack (stack);
                tempStack = intPush (tempStack, 0);

                GameObject[] jarr = new GameObject[0];
                GameObject g = findJoint (tempStack, 0, tree.transform.GetChild(0).gameObject);
                jarr = findLimbs(g,jarr);

                for (int j = 0 ; j < jarr.Length ; j++){

                    stack = intPush (stack, j);
                    tempStack = makeTempStack (stack);
                    _makeList (range, tempStack, stackArray, i + 1, tree);
                    stack = intPop (stack);

                }
            }

            else if(range[i][0] == -1 && i%2!=0 && i!=range.Count-1){

                int[] tempStack = makeTempStack (stack);

                GameObject[] jarr = new GameObject[0];
                GameObject g = findJoint (tempStack, 0, tree.transform.GetChild(0).gameObject);
                jarr = findLimbs(g,jarr);

                List<GameObject> limbs = jarr[0].GetComponent<Joint>().limbs;

                for (int j = 0 ; j < limbs.Count ; j++){

                    stack = intPush (stack, j);
                    int[] tempStack2 = makeTempStack (stack);
                    _makeList (range, tempStack2, stackArray, i + 1, tree);
                    stack = intPop (stack);
                }
            }

            else if(range[i][0] == -2 && i==range.Count-1 ||
                    range[i][0] == -1 && i==range.Count-1 ||
                    range[i][0] == -3 && i==range.Count-1){

                int[] tempStack = makeTempStack (stack);

                tempStack = intPush (tempStack, 0);

                GameObject g = findJoint (tempStack, 0, tree.transform.GetChild (0).gameObject);
                int joints = g.gameObject.GetComponent<Joint> ().joints;

                int min = 0;
                int max = joints+1;

                if(range[i][0] == -2)
                    min=1;

                if(range[i][0] == -3)
                    min=max-1;

                for (var j = min ; j < max ; j++){

                    stack = intPush (stack, j);
                    tempStack = makeTempStack (stack);
                    for(var k = 0 ; k < stack.Length ; k++){
                        tempStack[k] = stack[k];
                    }

                    _makeList (range, tempStack, stackArray, i + 1, tree);
                    stack = intPop (stack);
                }

            }

            else if(i==range.Count-1){

                int[] tempStack = makeTempStack (stack);

                tempStack = intPush (tempStack, 0);

                int min = range[i][0];
                int max = range[i][1];

                GameObject g = findJoint (tempStack, 0, tree.transform.GetChild (0).gameObject);
                int joints = g.gameObject.GetComponent<Joint> ().joints;

                if(min>joints+1)
                    min=joints+1;
                if(max>joints+1)
                    max=joints+1;

                for (int j = min ; j <= max ; j++){

                    if(range[i][0]==-2)
                        j++;

                    stack = intPush (stack, j);

                    tempStack = makeTempStack (stack);

                    _makeList (range, tempStack, stackArray, i + 1, tree);
                    stack = intPop (stack);
                }
            }
            else {

                stack = intPush (stack, range [i] [0]);

                int[] tempStack = makeTempStack (stack);

                _makeList (range, stack, stackArray, i + 1, tree);
                stack = intPop (stack);
            }
        } else {
            stackArray.Add (stack);
        }
        //		string s = "";
        //
        //		for (int i = 0; i < stackArray.Count; i++) {
        //			s += "FF";
        //			for (int j = 0; j < stackArray[i].Length; j++) {
        //				s+=","+stackArray [i][ j];
        //			}
        //		}
        //		Debug.Log (s);
        //		Debug.Log ("\n");

        return stackArray;
    }
Beispiel #30
0
    public static List<int[]> makeList(string input, TREE tree)
    {
        string[] sa = input.Split (new string[] { "|" }, System.StringSplitOptions.None);

        List<int[]> range = new List<int[]> ();

        for (int i = 0; i < sa.Length; i++) {
            string[] na = sa[i].Split (new string[] { "," }, System.StringSplitOptions.None);
            if (na.Length == 1) {
                int[] toAdd = new int[1];
                toAdd [0] = int.Parse (na [0]);
                range.Add (toAdd);
            } else {
                int a = int.Parse (na [1]);
                int b = int.Parse (na [0]);
                int[] toAdd = new int[2];
                toAdd [0] = b;
                toAdd [1] = a;
                range.Add (toAdd);
            }
        }

        int[] Stack = new int[0];
        List<int[]> StackArray = new List<int[]> ();
        int index = 0;

        return _makeList (range, Stack, StackArray, index, tree);
    }
Beispiel #31
0
 //Funkcje zapisu wybranego spella w wybranym slocie
 public void Offensive(Button spell, int index)
 {
     if (ChoosingOff.name == "Off1")
     {
         if (OffType != ChosenOffType || OffElement != ChosenOffElement)
         {
             ResetOff();
         }
         ChosenOffType    = OffType;
         ChosenOffElement = OffElement;
         OffButton1.GetComponentInChildren <Image>().color  = new Color(1, 1, 1, 1);
         OffButton1.GetComponentInChildren <Image>().sprite = spell.GetComponent <Image>().sprite;
         Off1 = spell.name;
         if (Off1 == Off2)
         {
             Off2 = "";
             OffButton2.GetComponentInChildren <Image>().color = new Color(1, 1, 1, 0);
         }
         if (Off1 == Off3)
         {
             Off3 = "";
             OffButton3.GetComponentInChildren <Image>().color = new Color(1, 1, 1, 0);
         }
         ChoosingOff.transform.localScale = new Vector3(1, 1, 1);
         OffButton1.GetComponentInChildren <Image>().transform.localScale = new Vector3(spellList.Scale[index].x, spellList.Scale[index].y, 1);
         TREE.SetActive(false);
     }
     else if (ChoosingOff.name == "Off2")
     {
         if (OffType != ChosenOffType || OffElement != ChosenOffElement)
         {
             ResetOff();
         }
         ChosenOffType    = OffType;
         ChosenOffElement = OffElement;
         OffButton2.GetComponentInChildren <Image>().color  = new Color(1, 1, 1, 1);
         OffButton2.GetComponentInChildren <Image>().sprite = spell.GetComponent <Image>().sprite;
         Off2 = spell.name;
         if (Off2 == Off1)
         {
             Off1 = "";
             OffButton1.GetComponentInChildren <Image>().color = new Color(1, 1, 1, 0);
         }
         if (Off2 == Off3)
         {
             Off3 = "";
             OffButton3.GetComponentInChildren <Image>().color = new Color(1, 1, 1, 0);
         }
         ChoosingOff.transform.localScale = new Vector3(1, 1, 1);
         OffButton2.GetComponentInChildren <Image>().transform.localScale = new Vector3(spellList.Scale[index].x, spellList.Scale[index].y, 1);
         TREE.SetActive(false);
     }
     else if (ChoosingOff.name == "Off3")
     {
         if (OffType != ChosenOffType || OffElement != ChosenOffElement)
         {
             ResetOff();
         }
         ChosenOffType    = OffType;
         ChosenOffElement = OffElement;
         OffButton3.GetComponentInChildren <Image>().color  = new Color(1, 1, 1, 1);
         OffButton3.GetComponentInChildren <Image>().sprite = spell.GetComponent <Image>().sprite;
         Off3 = spell.name;
         if (Off3 == Off1)
         {
             Off1 = "";
             OffButton1.GetComponentInChildren <Image>().color = new Color(1, 1, 1, 0);
         }
         if (Off3 == Off2)
         {
             Off2 = "";
             OffButton2.GetComponentInChildren <Image>().color = new Color(1, 1, 1, 0);
         }
         ChoosingOff.transform.localScale = new Vector3(1, 1, 1);
         OffButton3.GetComponentInChildren <Image>().transform.localScale = new Vector3(spellList.Scale[index].x, spellList.Scale[index].y, 1);
         TREE.SetActive(false);
     }
 }
Beispiel #32
0
 public void UpdateTree(TREE Tree)
 {
     _databaseHelper.UpdateTree(Tree);
     _databaseHelper.SetPlotSynch(Tree.PLOTID);
 }
 public static string Run(List <string> args)
 {
     FTPHandle.DownloadAll(TREE.Run(args));
     return("");
 }