Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Npc type split #10

Merged
merged 11 commits into from
Aug 15, 2023
Merged

Npc type split #10

merged 11 commits into from
Aug 15, 2023

Conversation

Yochien
Copy link
Owner

@Yochien Yochien commented Aug 15, 2023

Splits NPCs into two types, those for the bestiary and those for combat encounters. Bestiary NPCs are designed to be descriptive while combat NPCs are designed to be interactable.

Motivation behind this class split is to enable different behaviors for NPCs in the bestiary vs those in the encounter.

Most notably bestiary NPCs have some detailed user defined description.
Removes the odd behavior of the nickname copying the name if no nickname was given. Using None makes it more clear that the nickname is missing entirely.

This does make it impossible to remove a nickname once given though.
Replaces old NPC tests with combat NPC tests.

Still need bestiary NPC tests.
Allows defining the reset and empty behaviors within the class itself.
With the split between NPC types, info is a much more helpful command so info all is a useful tool.
The isValidInt method already checks a whole list of values, so there is no need to loop over them as done before.
Removes duplicates and sort the selection. Ideally would only remove the duplicates.
@Yochien Yochien merged commit f34ef53 into dev Aug 15, 2023
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant