Skip to content
This repository has been archived by the owner on Feb 22, 2023. It is now read-only.

Status system. #76

Open
ndouglas opened this issue Nov 9, 2022 · 0 comments
Open

Status system. #76

ndouglas opened this issue Nov 9, 2022 · 0 comments
Assignees
Labels
🎁 Everything Everythiiiiiiiiiiiiiiing...

Comments

@ndouglas
Copy link
Collaborator

ndouglas commented Nov 9, 2022

This expands on #75 , creating the underpinnings. A status indicates that an entity is doing something. Objects may have multiple of these statuses. They're probably going to be an enum, like IsFightingEntity(entity_id), etc.

How does this interact with the description when you look at the room? We should ideally be able to do the following:

  • a goblin
  • a goblin (lying in the shade)
  • a goblin is here, lying in the shade.

And perhaps we want to combine it with the "initial" idea, as in "A speckled mushroom grows out of the sodden earth, on a long stalk.", which would change to `"A speckled mushroom lies on the ground, slightly battered" once it had been touched, picked up, etc.

We could do a HasInitialDescription that simply contains a sentence. We would then refer to the standard description system after that initial description component has been destroyed. How best to destroy it? I think we can assume that taking the object or damaging it destroys the initial description. If another action should affect it, then it's up to the object to define that.

I think HasStatus should not wrap a vector. Instead, it should wrap a single item. But that item could be a compound, conceivably. If there is a single being, we can do a goblin is here, lying in the shade. If there are multiple beings, we would do the list format... a goblin (lying in the shade), a goblin slave. (Similarly, we should do A goblin is here. and a goblin, a goblin.

@ndouglas ndouglas added the 🎁 Everything Everythiiiiiiiiiiiiiiing... label Nov 9, 2022
@ndouglas ndouglas self-assigned this Nov 9, 2022
@ndouglas ndouglas added this to Hornvale Nov 9, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
🎁 Everything Everythiiiiiiiiiiiiiiing...
Projects
None yet
Development

No branches or pull requests

1 participant