public override void OnObjectiveItemPickup(LevelObjective lvlObj, BaseObject item) { StickyItem obj = item as StickyItem; if (connectedItem != null && obj != null) { if (obj.UUID == connectedItem.UUID && connectedItem.UUID != -1) { connectedObjective = lvlObj; if (lvlObj.isMainObjective) { completionSound = awardMain; } else { completionSound = awardSide; } currentPickedUpItems++; if (currentPickedUpItems == (itemNumber)) { image.sprite = connectedItem.icon; FadeOpen(false); } } } }
public void OnSnakeItemPickup(StickyItem obj, SnakeInventory snakeInv) { if (obj.icon == null) { audioS.PlayOneShot(velcroSound); } }
public void OnSnakeItemPickup(StickyItem obj, SnakeInventory snakeInv) { if (obj.name == gameObject.name) { justPickedup = true; } }
public void OnSnakeItemDrop(StickyItem obj, SnakeInventory snakeInv) { if (objectives.ContainsKey(obj) && !hasFinished) { objectives[obj] = CompleteState.Uncompleted; collectedCount--; } }
public void DropItem(StickyItem x, SnakeCollider y) { if (inventory.Contains(x)) { inventory.Remove(x); jointInventory.Remove(y); eventManager.InvokeEventFast <ISnakeItemDrop, StickyItem, SnakeInventory>(x, this); } }
public void PickUpItem(StickyItem x, SnakeCollider joint) { if (inventory.Add(x)) { if (!jointInventory.ContainsKey(joint)) { jointInventory[joint] = new List <StickyItem>(); } jointInventory[joint].Add(x); eventManager.InvokeEventFast <ISnakeItemPickup, StickyItem, SnakeInventory>(x, this); //eventManager.InvokeSnakeItemPickup(x,this); } }
public void OnSnakeItemPickup(StickyItem obj, SnakeInventory snakeInv) { if (objectives.ContainsKey(obj) && !hasFinished) { objectives[obj] = CompleteState.Completed; collectedCount++; eventManager.InvokeEventFast <IObjectivePickup, LevelObjective, BaseObject>(this, obj); if (ObjectivesComplete() && completionType == CompletionType.CompleteOnPickup) { eventManager.InvokeEventFast <IObjectiveComplete, LevelObjective>(this); hasFinished = true; } } }
public void OnSnakeCollisionEnter(Collision col, SnakeCollider joint) { Collider collider = col.collider; BaseObject collidedObject; if (ColliderCache.cachedObjects.TryGetValue(collider, out collidedObject)) { StickyItem sticky = collidedObject as StickyItem; if (sticky != null) { if (ValidatePickup(sticky)) { if (sticky.TryStickToSnake(col, joint.rigid)) { PickUpItem(sticky, joint); } } } } }
void Start() { sticky = transform.parent.GetComponent <StickyItem>(); var renderer = GetComponent <Renderer>(); material = renderer.material; if (sticky == null || material == null) { this.enabled = false; return; } material.SetColor("_EmissionColor", Color.clear); material.EnableKeyword("_EMISSION"); //MeshFilter filter = GetComponent(typeof (MeshFilter)) as MeshFilter; //if (filter != null) //{ // Mesh mesh = filter.mesh; // // Vector3[] normals = mesh.normals; // for (int i = 0; i < normals.Length; i++) // normals[i] = -normals[i]; // mesh.normals = normals; // // for (int m = 0; m < mesh.subMeshCount; m++) // { // int[] triangles = mesh.GetTriangles(m); // for (int i = 0; i < triangles.Length; i += 3) // { // int temp = triangles[i + 0]; // triangles[i + 0] = triangles[i + 1]; // triangles[i + 1] = temp; // } // mesh.SetTriangles(triangles, m); // } //} StartCoroutine(TweenStart()); }
public virtual void OnObjectiveItemPickup(LevelObjective lvlObj, BaseObject item) { StickyItem obj = item as StickyItem; if (connectedItem != null && obj != null) { if (obj.UUID == connectedItem.UUID && connectedItem.UUID != -1) { connectedObjective = lvlObj; if (lvlObj.isMainObjective) { completionSound = awardMain; } else { completionSound = awardSide; } image.sprite = connectedItem.icon; FadeOpen(false); } } }
void setStickyList() { //プレハブからゲームオブジェクトを動的生成 for (int i = 1; i <= stickyList.m_list.Count; i++) { //配列からItemインスタンスを取得 StickyItem item = stickyList.m_list [i - 1]; //プレハブから生成(指定のゲームオブジェクトの子要素として出力したい) GameObject stickyImage = Instantiate(stickyImagePrefab) as GameObject; //Canvasの子要素にする //親要素に設定した時、Untiyがポジションとスケールを自動で変換してしまうのでポジションとスケールを初期化する //ポジションはlocalPositionを使った方がいい stickyImage.transform.parent = imageCanvas.transform; stickyImage.transform.localPosition = new Vector3(0, -200, 0); stickyImage.transform.localScale = Vector3.one; //1,1,1 //位置をずらす Vector3 pos = stickyImage.transform.localPosition; pos.y += i * 120; stickyImage.transform.localPosition = pos; //テキストをItemのプロパティを使う Text stickyText = stickyImage.transform.Find("StickyText").GetComponent <Text> (); stickyText.text = item.keyword; } }
public void OnSnakeItemDrop(StickyItem obj, SnakeInventory snakeInv) { }
public bool ValidatePickup(StickyItem x) { return(true); //Here we might want to not pick up some items at some point for some reason sometimes or something }
public void OnSnakeItemDrop(StickyItem obj, SnakeInventory snakeInv) { attachedMass -= obj.rigid.mass; }
public void OnSnakeItemPickup(StickyItem obj, SnakeInventory snakeInv) { attachedMass += obj.rigid.mass; snakeInventory = snakeInv; }