From 6367ad8696323e2463d52969f6556a183f8b8e20 Mon Sep 17 00:00:00 2001 From: chimchooree Date: Thu, 17 Nov 2022 23:52:18 -0600 Subject: [PATCH] locations, items, controls, proxemics, setting --- src/blessfrey-gdd/controls | 3 ++- src/blessfrey-gdd/item | 11 ++++++--- src/blessfrey-gdd/proxemics | 4 +-- src/blessfrey-gdd/setting | 16 +++--------- src/call | 4 +++ src/diary/hold/makeup-opinions | 29 ++++++++++++++++++++++ src/index.py | 34 +++++++++++++++++-------- src/loc/CSA | 1 + src/loc/Huntsville | 1 + src/loc/Lucrest | 1 + src/loc/Scrapyard | 1 + src/loc/USA | 1 + src/loc/mercur | 1 + src/loc/thunderspy arcade | 1 + src/verses-memorize | 45 ++++++++++++++++++++++++++++++++++ src/verses-share | 1 + src/views/bf-gdd.tpl | 2 +- src/views/page-setting.tpl | 6 +++++ src/views/setting.tpl | 11 +++++++++ 19 files changed, 144 insertions(+), 29 deletions(-) create mode 100644 src/call create mode 100644 src/diary/hold/makeup-opinions create mode 100644 src/loc/CSA create mode 100644 src/loc/Huntsville create mode 100644 src/loc/Lucrest create mode 100644 src/loc/Scrapyard create mode 100644 src/loc/USA create mode 100644 src/loc/mercur create mode 100644 src/loc/thunderspy arcade create mode 100644 src/verses-memorize create mode 100644 src/verses-share create mode 100644 src/views/page-setting.tpl create mode 100644 src/views/setting.tpl diff --git a/src/blessfrey-gdd/controls b/src/blessfrey-gdd/controls index 9491183..593855c 100644 --- a/src/blessfrey-gdd/controls +++ b/src/blessfrey-gdd/controls @@ -3,7 +3,8 @@

list of default controls


challenges/known issues

diff --git a/src/blessfrey-gdd/item b/src/blessfrey-gdd/item index 424631f..85aa3be 100644 --- a/src/blessfrey-gdd/item +++ b/src/blessfrey-gdd/item @@ -15,20 +15,25 @@

move to pick up item

Items can only be picked up by the player. They can be picked up via item targeting or through selecting 'pick up' on the inspect menu.


-

Item pickup is triggered when a floor item is targeted, that is, a 'target' (left-click) triggers a $Item/Body/Sprite/Sprite.gd/_on_input_event. If 'no_move_to_target' (shift) is held while targeting, the item will be targeted without initiating pickup. Otherwise, floor_item.gd/target_event(viewport,event,shape_idx) is called to set the target and handle the input before prompting the player to consider pickup.

+

Item pickup is triggered when a floor item is targeted, that is, a 'target' (left-click) triggers a $Item/Body/Sprite/Sprite.gd/_on_input_event. If 'no_move_to_target' (shift) is held while targeting, the floor item will be targeted without initiating pickup. Otherwise, floor_item.gd/target_event(viewport,event,shape_idx) is called to set the target and handle the input before prompting the player to consider pickup.


Item pickup is also an option on the floor items' inspect menu. Choosing it triggers that floor item's id_pressed(id), which calls the associated method from its inspect_options dictionary: floor_item.gd/move_player_then_pickup(), prompting the player to consider pickup.


Character.gd/consider_pickup(item) passes to UserControl/pickup(item). The next branch depends on a distance check.


-

If the item is within the player's intimate distance, the character will be prompted to pick up the item. +

If the floor item is within the player's intimate distance, the character will be prompted to pick up the floor item.


Otherwise, pathfinding begins towards the floor item. Upon arrival, it calls floor_item.pick_up().pick_up(). The floor item's pick_up removes itself from the room and returns the base item, then the inventory system takes care of the rest.


drop item

+

Items can be dropped from the inventory app when the player selects 'drop' on the inspect menu.

+
+

Choosing 'drop' triggers that inventory item's id_pressed(id), which calls the associated method from its inspect_options dictionary: inventory_item.gd/drop. It, in turn, calls the drop method off its base item.

+
+

The base item's drop() emits the 'dropped' signal, which triggers the inventory item to queue_free then the inventory app to be refreshed. (connected @ InvContainer.gd/make_inventory_items(base_item).

challenges/known issues

-


+

pick up in range puts a floor item in the programmatic inventory. out of range puts a proper base item. STOP at line 309 on character.gd.


works for...