public void OnDrop(PointerEventData eventData) { if (MyControll.draggedObject != null) { if (!isDefaultSlot) //Jika huruf di drop ke slot grid 15x15 dan Jika slot grid 15x15 kosong { if (!item) //Jika slot grid 15x15 kosong { MyControll.draggedObject.transform.SetParent(transform); } else if (item && !item.GetComponent <MyControll>().canDrag) { MyControll.draggedObject.GetComponent <MyControll>().setToDefault(); } else { MyControll.draggedObject.transform.SetParent(transform); item.GetComponent <MyControll>().setToDefault(); } MyControll Itemcontroll = item.GetComponent <MyControll>(); ExecuteEvents.ExecuteHierarchy <IHasChanged>(gameObject, null, (x, y) => x.hasChanged()); WordsGame.Instance.grid[row][col] = Itemcontroll; WordsGame.Instance.wordSet[Itemcontroll.urutan][0] = row; WordsGame.Instance.wordSet[Itemcontroll.urutan][1] = col; } else { MyControll.draggedObject.GetComponent <MyControll>().setToDefault(); } WordsGame.Instance.playSlotAudio(); WordsGame.Instance.RecallOrShuffle(); } }
private void ChangeControl(bool param) { for (int i = 0; i < Gdata.DefaultTile.transform.childCount; i++) { MyControll word = Gdata.DefaultTile.transform.GetChild(i).GetChild(0).GetComponent <MyControll>(); word.canDrag = param; } }
void Awake() { Gdata.Cover.SetActive(true); Gdata.ScoreText.text = PlayerPrefs.GetInt("room_id").ToString() + " " + System.DateTime.Now; MyApi.DoGetRequest("/api/values/" + PlayerPrefs.GetInt("room_id"), returnValue => { roomData = returnValue; //Get detail user rm MyApi.DoGetRequest("/api/user/" + roomData["user_rm"], rval => { user_rmData = rval; }); //Get detail user guest MyApi.DoGetRequest("/api/user/" + roomData["user_guest"], rguest => { user_guestData = rguest; }); JSONObject j = new JSONObject(JSONObject.Type.OBJECT); j.AddField("id", roomData["id"].ToString()); j.AddField("user_rm", roomData["user_rm"].ToString()); j.AddField("user_guest", roomData["user_guest"].ToString()); j.AddField("status", 2); MyApi.DoPostRequest("/api/start/", j, myCallback => { }); JSONObject k = new JSONObject(JSONObject.Type.OBJECT); k.AddField("id", roomData["id"].ToString()); k.AddField(PlayerPrefs.GetInt("user_id") == roomData["user_rm"] ? "user_rm" : "user_guest", PlayerPrefs.GetInt("user_id") == roomData["user_rm"] ? roomData["user_rm"].ToString() : roomData["user_guest"].ToString()); k.AddField(PlayerPrefs.GetInt("user_id") == roomData["user_rm"] ? "ready_p1" : "ready_p2", "1"); MyApi.DoPostRequest("/api/start/0", k, rReady => { InvokeRepeating("startPlay", 0f, 1f); }); }); wordList = Resources.LoadAll <Word>("Words"); //Data word scriptable object RandomWord(); //acak kata yang akan di tampilkan //instance class WordsGame if (_instance != null && _instance != this) { Destroy(this.gameObject); } else { _instance = this; } //init array untuk grid for (int i = 0; i < grid.Length; i++) { grid[i] = new MyControll[15]; } //init array untuk satu set huruf yang sedang dipakai //array ini digunakan sebagai tracking huruf di grid keberapa for (int i2 = 0; i2 < wordSet.Length; i2++) { wordSet[i2] = new int[2]; } }