achievements, controls, inspect, inventory, item, pathfinding
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
<h2>description </h2>
|
||||
<p>Items are objects that may be picked up, purchased, used, equipped, dropped, or sold. They include currency, quest items, equipment, consumables, readables, upgrades, keys, and trinkets. <br></p>
|
||||
<br>
|
||||
<h2>four representations </h2>
|
||||
@@ -11,7 +12,7 @@
|
||||
<br>
|
||||
<p>Merchandise appears in store windows. <br></p>
|
||||
<br>
|
||||
<h2>item pickup </h2>
|
||||
<h2>move to pick up item </h2>
|
||||
<p>Items can only be picked up by the player. They can be picked up via item targeting or through selecting 'pick up' on the <a href="/blessfrey-gdd/inspect">inspect menu</a>. <br></p>
|
||||
<br>
|
||||
<p>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. <br></p>
|
||||
@@ -22,10 +23,11 @@
|
||||
<br>
|
||||
<p>If the item is within the player's <a href="/blessfrey-gdd/proxemics">intimate distance</a>, the character will be prompted to pick up the item.
|
||||
<br>
|
||||
<p>Otherwise, <a href="/blessfrey-gdd/pathfinding">pathfinding</a> begins towards the floor item. Upon arrival, it calls item.pick_up().pick_up(). <br></p>
|
||||
<p>Otherwise, <a href="/blessfrey-gdd/pathfinding">pathfinding</a> 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 <a href="/blessfrey-gdd/inventory">inventory system</a> takes care of the rest. <br></p>
|
||||
<br>
|
||||
<br>
|
||||
<h2>challenges/known issues </h2>
|
||||
<p>I intend for the player to be able to pick up an item through the inspect menu without changing his current target. For now, InspectMenu.gd/set_subject(subject) sets the player target. MoveToDestination.gd/handle_moved_result tracks the user's current target using character/find_distance_to_target(). Instead, it would need to receive the relevant subject from the inspect menu or skill or attack target from the character and pass it through character/find_distance_to(target). <br></p>
|
||||
<p> <br></p>
|
||||
<br>
|
||||
<h2>works for...</h2>
|
||||
<ul>
|
||||
|
||||
Reference in New Issue
Block a user