public void drop_item() { if (item != null) { GameObject dropped_object = new GameObject(item.name); dropped_object.transform.SetParent(pickables); GameObject player = GameObject.Find("player"); dropped_object.transform.position = new Vector3(player.transform.position.x, player.transform.position.y - 0.3f, player.transform.position.z); SpriteRenderer dropped_object_renderer = dropped_object.AddComponent <SpriteRenderer> (); dropped_object_renderer.sprite = item.icon; dropped_object_renderer.sortingLayerName = "Pickable"; BoxCollider2D dropped_object_collider = dropped_object.AddComponent <BoxCollider2D> (); dropped_object_collider.isTrigger = true; dropped_object_collider.size = new Vector2(0.5f, 0.5f); dropped_object_collider.offset = new Vector2(0f, 0f); item_picker dropped_object_trigger = dropped_object.AddComponent <item_picker> (); dropped_object_trigger.item = item; //dropped_object_trigger.player_bubble = GameObject.Find ("player_bubble"); inventory.instance.item_remove(item); } }
void drop_item(Item item) { GameObject dropped_object = new GameObject(item.name); dropped_object.transform.SetParent(pickables); dropped_object.transform.position = new Vector3(player.transform.position.x, player.transform.position.y - 0.3f, player.transform.position.z); SpriteRenderer dropped_object_renderer = dropped_object.AddComponent <SpriteRenderer> (); dropped_object_renderer.sprite = item.icon; dropped_object_renderer.sortingLayerName = "Pickable"; BoxCollider2D dropped_object_collider = dropped_object.AddComponent <BoxCollider2D> (); dropped_object_collider.isTrigger = true; dropped_object_collider.size = new Vector2(0.5f, 0.5f); dropped_object_collider.offset = new Vector2(0f, 0f); item_picker dropped_object_trigger = dropped_object.AddComponent <item_picker> (); dropped_object_trigger.item = item; }
IEnumerator interact() { if (settings.already_interacting) { yield break; } settings.already_interacting = true; playercontroller.bool_cutscene = true; playercontroller.bool_player_moves = false; playercontroller.float_movexaxis = 0f; playercontroller.float_moveyaxis = 0f; string say_this; string say_this_cze; float want_time; float current_time; say_this = "I need a branch from this tree."; say_this_cze = "Potřebuji větev z tohoto stromu."; want_time = 2f; StartCoroutine(dialog.say_something(dialog.player_name, say_this, say_this_cze, want_time, dialog.player_portrait[player_head.GetInteger("emotion")], player_head)); want_time += 0.1f; current_time = 0f; while (current_time < want_time) { current_time += Time.deltaTime; if (settings.GetComponent <Settings>().cutscene_skip) { break; } yield return(null); } yield return(null); Inventory_ui.interactive_open = true; if (!settings.inventory_opened) { Inventory_ui.open_close_inventory(); } yield return(new WaitForSeconds(0.01f)); int got_id = -1; if (Inventory_ui.interactive_open) { switch (Inventory_ui.selected_slot) { case 10: if (Inventory.melee_weapon != null) { got_id = wanted_id; } break; case 11: got_id = -1; break; default: if (Inventory.items.Count > Inventory_ui.selected_slot) { got_id = Inventory.items [Inventory_ui.selected_slot].ID; } break; } } if (got_id == wanted_id) { yield return(new WaitForSeconds(2f)); if (Inventory.item_add(item)) { say_this = "I sucessfuly cut a branch."; say_this_cze = "Úspěšně jsem usekl větev."; want_time = 2f; StartCoroutine(dialog.say_something(dialog.player_name, say_this, say_this_cze, want_time, dialog.player_portrait[player_head.GetInteger("emotion")], player_head)); current_time = 0f; while (current_time < want_time) { current_time += Time.deltaTime; if (settings.GetComponent <Settings>().cutscene_skip) { break; } yield return(null); } yield return(null); } else { GameObject dropped_object = new GameObject(item.name); GameObject player = playercontroller.gameObject; //GameObject.Find ("player"); dropped_object.transform.position = new Vector3(player.transform.position.x, player.transform.position.y - 0.3f, player.transform.position.z); dropped_object.transform.SetParent(GameObject.Find("Pickables").transform); SpriteRenderer dropped_object_renderer = dropped_object.AddComponent <SpriteRenderer> (); dropped_object_renderer.sprite = item.icon; dropped_object_renderer.sortingLayerName = "Pickable"; BoxCollider2D dropped_object_collider = dropped_object.AddComponent <BoxCollider2D> (); dropped_object_collider.isTrigger = true; dropped_object_collider.size = new Vector2(0.5f, 0.5f); dropped_object_collider.offset = new Vector2(0f, 0f); item_picker dropped_object_trigger = dropped_object.AddComponent <item_picker> (); dropped_object_trigger.item = item; say_this = "I sucessfuly cut a branch, but I can't carry it now."; say_this_cze = "Úspěšně jsem usekl větev, ale teď ji fakt už neunesu."; want_time = 3f; StartCoroutine(dialog.say_something(dialog.player_name, say_this, say_this_cze, want_time, dialog.player_portrait[player_head.GetInteger("emotion")], player_head)); current_time = 0f; while (current_time < want_time) { current_time += Time.deltaTime; if (settings.GetComponent <Settings>().cutscene_skip) { break; } yield return(null); } yield return(null); } game_manager.pine01_t_interactiondone = true; GameObject.Find("cutscene_object").GetComponent <cutscene01> ().cutscene3_prepare(); } else { yield return(new WaitForSeconds(0.5f)); say_this = "I need something else to cut that branch."; say_this_cze = "Na useknutí větve budu potřebovat něco jiného."; want_time = 2.5f; StartCoroutine(dialog.say_something(dialog.player_name, say_this, say_this_cze, want_time, dialog.player_portrait[player_head.GetInteger("emotion")], player_head)); current_time = 0f; while (current_time < want_time) { current_time += Time.deltaTime; if (settings.GetComponent <Settings>().cutscene_skip) { break; } yield return(null); } yield return(null); } yield return(null); playercontroller.bool_cutscene = false; settings.already_interacting = false; }