D2Data and Quest data (#9)

This commit is contained in:
Héctor Giménez
2024-02-02 20:19:44 +09:00
committed by GitHub
parent f06c587c7a
commit db8fc7d6db
16 changed files with 25749 additions and 462 deletions

51
pkg/data/quest/quest.go Normal file
View File

@@ -0,0 +1,51 @@
package quest
type Quest int16
type Status int16
type States []Status
func (s States) Completed() bool {
return s.HasStatus(StatusUpdateQuestLogCompleted)
}
func (s States) HasStatus(st Status) bool {
for _, state := range s {
if state == st {
return true
}
}
return false
}
const (
Act1DenOfEvil Quest = iota
Act1SistersBurialGrounds
Act1ToolsOfTheTrade
Act1TheSearchForCain
Act1TheForgottenTower
Act1SistersToTheSlaughter
Act2RadamentsLair
Act2TheHoradricStaff
Act2TaintedSun
Act2ArcaneSanctuary
Act2TheSummoner
Act2TheSevenTombs
Act3LamEsensTome
Act3KhalimsWill
Act3BladeOfTheOldReligion
Act3TheGoldenBird
Act3TheBlackenedTemple
Act3TheGuardian
Act4TheFallenAngel
Act4HellForge
Act4TerrorsEnd
Act5SiegeOnHarrogath
Act5RescueOnMountArreat
Act5PrisonOfIce
Act5BetrayalOfHarrogath
Act5RiteOfPassage
Act5EveOfDestruction
)
type Quests map[Quest]States

20
pkg/data/quest/status.go Normal file
View File

@@ -0,0 +1,20 @@
package quest
const (
StatusRewardGranted Status = iota
StatusRewardPending
StatusQuestInitiated
StatusLeaveTown
StatusEnterFirstArea
StatusInProgress1
StatusInProgress2
StatusInProgress3
StatusInProgress4
StatusInProgress5
StatusInProgress6
StatusInProgress7
StatusUpdateQuestLogCompleted
StatusPrimaryGoalCompleted
StatusUnknown1
StatusUnknown2
)