Logbook Achievements - UQcsse3200/2024-studio-2 GitHub Wiki
Overview
- Achievement - contains information about an achievement
- AchievementManager - manages setup, saving and loading of achievements
- QuestManager - manages setup of Achievements listeners
Sequence diagram
Usage
Achievements are loaded from Assets/defaultsaves/achievementachievements.json and a save is loaded in Assets/saves/achievement/achievements.json by the AchievementsManager. Achievements are read from the AchievementsManager and supporting events and triggers are handled in QuestManager. When an achievement is completed it will show in the logbook. When an achievement is completed but not yet seen it will have a "new" effect placed on it. First time defeats, completion of mini-games to specific standards or pick ups of items trigger achievements.
UML diagram
Current achievements
Achievements currently exist for all: items, enemies and minigame medals in the game. These achievements are unlocked on the first collection, defeat of and awarding of their respective related object. The following are the current achievements and the contents of Assets/defaultsaves/achievementachievements.json
{
achievements: [
{
questName: AppleAdvancement
questDescription: Collect your first apple!
completed: false
seen: false
type: ITEM
iconPath: images/foodtextures/apple.png
}
{
questName: Attack PotionAdvancement
questDescription: Collect your first Attack Potion!
completed: false
seen: false
type: ITEM
iconPath: images/potiontexture/attack.png
}
{
questName: Defense PotionAdvancement
questDescription: Collect your first Defense Potion!
completed: false
seen: false
type: ITEM
iconPath: images/potiontexture/defense.png
}
{
questName: Health PotionAdvancement
questDescription: Collect your first Healing Potion!
completed: false
seen: false
type: ITEM
iconPath: images/Healthpotion.png
}
{
questName: Speed PotionAdvancement
questDescription: Collect your first Speed Potion!
completed: false
seen: false
type: ITEM
iconPath: images/potiontexture/speed.png
}
{
questName: Chicken_LegAdvancement
questDescription: Collect your first Chicken Leg!
completed: false
seen: false
type: ITEM
iconPath: images/foodtextures/chicken_leg.png
}
{
questName: MeatAdvancement
questDescription: Collect your first Meat!
completed: false
seen: false
type: ITEM
iconPath: images/foodtextures/meat.png
}
{
questName: CandyAdvancement
questDescription: Collect your first Candy!
completed: false
seen: false
type: ITEM
iconPath: images/foodtextures/candy.png
}
{
questName: CarrotAdvancement
questDescription: Collect your first Carrot!
completed: false
seen: false
type: ITEM
iconPath: images/foodtextures/carrot.png
}
{
questName: First Steps
questDescription: Take your first steps in this world!
completed: false
seen: false
type: ADVANCEMENT
iconPath: images/logbook/icons/first-steps.png
}
{
questName: BRONZE SNAKE
questDescription: Finish the snake mini game with a bronze medal
completed: false
seen: false
type: ADVANCEMENT
iconPath: images/logbook/icons/snake-bronze.png
}
{
questName: SILVER SNAKE
questDescription: Finish the snake mini game with a silver medal
completed: false
seen: false
type: ADVANCEMENT
iconPath: images/logbook/icons/snake-silver.png
}
{
questName: GOLD SNAKE
questDescription: Finish the snake mini game with a gold medal
completed: false
seen: false
type: ADVANCEMENT
iconPath: images/logbook/icons/snake-gold.png
}
{
questName: BRONZE BIRD
questDescription: Finish the bird mini game with a bronze medal
completed: false
seen: false
type: ADVANCEMENT
iconPath: images/logbook/icons/bird-bronze.png
}
{
questName: SILVER BIRD
questDescription: Finish the bird mini game with a silver medal
completed: false
seen: false
type: ADVANCEMENT
iconPath: images/logbook/icons/bird-silver.png
}
{
questName: GOLD BIRD
questDescription: Finish the bird mini game with a gold medal
completed: false
seen: false
type: ADVANCEMENT
iconPath: images/logbook/icons/bird-gold.png
}
{
questName: MONKEY
questDescription: Defeat the fearsome monkey!
completed: false
seen: false
type: ENEMY
iconPath: images/logbook/icons/monkey.png
}
{
questName: CHICKEN
questDescription: Defeat the terrifying chicken!
completed: false
seen: false
type: ENEMY
iconPath: images/logbook/icons/chicken.png
}
{
questName: FROG
questDescription: Defeat the dangerous frog!
completed: false
seen: false
type: ENEMY
iconPath: images/logbook/icons/frog.png
}
{
questName: KANGAROO
questDescription: Defeat the MIGHTY KANGAROO!
completed: false
seen: false
type: ENEMY
iconPath: images/final_boss_kangaroo_idle.png
}
{
questName: BEAR
questDescription: Defeat the MIGHTY BEAR!
completed: false
seen: false
type: ENEMY
iconPath: images/logbook/icons/update-3/bear.png
}
{
questName: BEE
questDescription: Defeat the MIGHTY BEE!
completed: false
seen: false
type: ENEMY
iconPath: images/logbook/icons/update-3/bee.png
}
{
questName: PIGEON
questDescription: Defeat the MIGHTY PIGEON!
completed: false
seen: false
type: ENEMY
iconPath: images/logbook/icons/update-3/pigeon.png
}
{
questName: MACAW
questDescription: Defeat the MIGHTY MACAW!
completed: false
seen: false
type: ENEMY
iconPath: images/logbook/icons/update-3/macaw.png
}
{
questName: EEL
questDescription: Defeat the MIGHTY EEL!
completed: false
seen: false
type: ENEMY
iconPath: images/logbook/icons/update-3/eel.png
}
{
questName: BIGSAWFISH
questDescription: Defeat the MIGHTY BIG SAW FISH!!
completed: false
seen: false
type: ENEMY
iconPath: images/logbook/icons/update-3/bigsawfish.png
}
{
questName: MilkAdvancement
questDescription: Got Milk
completed: false
seen: false
type: ITEM
iconPath: images/logbook/icons/update-3/milk.png
}
{
questName: CaviarAdvancement
questDescription: Find Sushi
completed: false
seen: false
type: ITEM
iconPath: images/logbook/icons/update-3/sushi.png
}
{
questName: LootBoxAdvancement
questDescription: Find a lootBox
completed: false
seen: false
type: ITEM
iconPath: images/logbook/icons/update-3/lootbox.png
}
{
questName: BRONZE MAZE
questDescription: Finish the FISH mini game with a bronze medal
completed: false
seen: false
type: ADVANCEMENT
iconPath: images/logbook/icons/update-3/fish-bronze.png
}
{
questName: SILVER MAZE
questDescription: Finish the FISH mini game with a silver medal
completed: false
seen: false
type: ADVANCEMENT
iconPath: images/logbook/icons/update-3/fish-silver.png
}
{
questName: GOLD MAZE
questDescription: Finish the FISH mini game with a gold medal
completed: false
seen: false
type: ADVANCEMENT
iconPath: images/logbook/icons/update-3/fish-gold.png
}
{
questName: WATERBOSS
questDescription: Defeat the MIGHTY WATER BOSS!!
completed: false
seen: false
type: ENEMY
iconPath: images/logbook/icons/update-3/waterboss.png
}
{
questName: AIRBOSS
questDescription: Defeat the MIGHTY AIR BOSS!!
completed: false
seen: false
type: ENEMY
iconPath: images/logbook/icons/update-3/airboss.png
}
{
questName: JOEY
questDescription: Defeat the MIGHTY AIR BOSS!!
completed: false
seen: false
type: ENEMY
iconPath: images/logbook/icons/update-3/joey.png
}
{
questName: PIRANHA
questDescription: Defeat the piranha!
completed: false
seen: false
type: ENEMY
iconPath: images/logbook/icons/update-3/piranha.png
}
]
}