Skip to content

Conversation

@mihnealook
Copy link

Quest system
Added by Stefan Dobrica and Mihnea Zamfir

To add a quest, simply call QuestManager.AddQuest(Quest q)

Quest constructor uses:

  • List
  • List
  • string questTitle
  • string questDesctiption

Goals can be of multiple types:

  • KillGoal - KillGoal(int enemyId, int ammount)
  • MoveGoal - MoveGoal(Vector3 poz)

Preferably the upcoming enemy system uses an enemyId

Rewards can be of multiple types:

  • RewardExp - RewardExp(float ammount)
  • RewardMoney - RewardMoney(float ammount)
  • RewardItem - RewardItem(Item item)

Preferably the upcoming item system uses an Item class
Preferably the upcoming exp system uses an AddExp function that takes a float as argument
Preferably the upcoming money system uses an AddMoney function that takes a float as argument

Includes:

  • Classes for Quests, Goals, Rewards
  • Managers for Quests and UI
    • QuestManager.AddQuest adds a quest to the quest list and to the UI
    • QuestManager.Start includes a test for the above functionality
    • Quest text (goals and rewards) updates in real time
    • UiManager uses a prefab for the quest template that resizes according to text length
  • Mock-up managers for Exp, Item, Money, Player and Enemy management

Dependencies:

  • TextMeshPro

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.

1 participant