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

Feature/refactor/frontend backend achievements #68

Merged
merged 31 commits into from
Nov 8, 2023

Conversation

Darosss
Copy link
Owner

@Darosss Darosss commented Nov 8, 2023

No description provided.

Darosss and others added 30 commits November 6, 2023 21:54
…gressAndAddToQueue

add extend UpdateAchievementUserProgressProgressesArgs~ in UpdateAchievementUserProgressOpts

chagne types for new proper type
move achievements logic from LoyalytHandler to AchievementsHandler
add DOTS, QUESTION_MARKS, COMMAS, DICTATOR, MONKEY, LONG_MESSAGES, SHORT_MESSAGES, XD, POLISH_SWEARING, KAPPA, LUL

add mostly chat messages ACHIEVEMENTS
* feat(defaults/achievements): add COMMANDS_COUNT,SONG_REQUEST,SONG_VOTING

* feat(AchievementsHandler): add handling commands achievements

* feat(CommandsHandler): add usage of AchievementsHandler

add dependecy injection as AchievementsHandler

add check achievements on command, vote song and song request

* feat(stream): add achievementsHandler to CommandsHandler opts

* feat(defaults/achievements): add command default achievements

add COMMANDS_COUNT, SONG_VOTING, SONG_REQUEST
simply replace userId with foundUser._id
add proper ACHIEVEMENTS.CHAT_MESSAGES to checkUserMessagesCountForAchievement and ACHIEVEMENTS.WATCH_TIME to checkUserWatchTimeForAchievement
* refactor(models/achievements): improve populated interfaces

* feat(models/user): add badges property

* feat(services/users): create addBadgesToUser

* refactor(getDataForObtainAchievementEmit): change type of newStages

change type of newStages to GetDataForObtainAchievementEmitReturnData["stages"]

* feat(getOneAchievement): add type for foundAchievement

* refactor(services/achievements): change to new populated types

replace AchievementModel and StageData with new types [...]WithBadgePopulated

* refactor(socketIO): change type in ObtainAchievementData

change type in ObtainAchievementData to new StageDataWithBadgePopulated

* feat(defaults/achievements); add BADGES_COUNT to ACHIEVEMENTS

* feat(defaults/achievements): add default for BADGES_COUNT achievement

* feat(AchievementsHandler): add check BADGES_COUNT + add badges to user

* feat(LoyaltyHandler): add usage of checkUserBadgesCountForAchievement
* feat(socketIO): add id, change stage type of ObtainAchievementData

* refactor(services/achievements): change stages in GetDataForObtainAchievementEmitReturnData interface

change to ObtainAchievementData["stage"][];

* feat(getDataForObtainAchievementEmit): add timestamp to each of newStages

* feat(AchievementsHandler): add changes connected to changes of ObtainAchievementData

add id field in addObtainedAchievementDataToQueue

* refactor(socket/events): remove destructuring in obtainAchievement

remove destructuring and pass as one variable

* refactor(components/Achievements): add fixes connected to changes of ObtainedAchievementData type
* feat(socketIO/serverToClient): add obtainAchievementQueueInfo event

* feat(AchievementsHandler): add emit obtainAchievementQueueInfo in startInterval

* feat(QueueHandler0: add getItemsCountInQueue method

* feat(socket/events): add obtainAchievementQueueInfo event

* feat(overlay/achievement): add number of achievements in queue

* feat(overlay/achievements): add clearing state > 20 item
* feat(models/achievement): add sound + rarity to AchievementStage

* feat(services/achievements): add rarity + sound to AchievemnetStageData

* feat(components/overlay): add initial styles for rarities

* feat(components/overlay): add play audio of stage

* feat(models/achievement): add showTimeMs to StageData

* feat(overlay/achievements): add stop music when new achievement appear

* feat(QueueHandler): add startTimeout methods

* refactor(AchievementsHandler): replace usage of startInterval to startTimeout

change to setTimeout for changing delay  betweeen achievements

* feat(defaults/achievements): add showTime + rarity to stages defaults
* refactor(utils): split enabled, tag, mood into separate variable

* feat(models/achievement): add tag + enabled to AchievementSchema

* feat(defaults/achievements): add tagId to default Achievements

* refactor(configs/database): make way to pass tagId to default achievmenets

* feat(services/achievements): add tag:string to AchievementCreateData

* feat(getOneAchievement): add populateTag optional arg

* feat(services/achievements/progress): add check if enabled/tag.enabled
@Darosss Darosss merged commit 638c665 into main Nov 8, 2023
@Darosss Darosss deleted the feature/refactor/frontend-backend-achievements branch November 8, 2023 19:40
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