[Spells] Added IsNightTime() for Dance of the Fireflies (#3667)

* Added IsNightOnly for Dance of the Fireflies spell which should only be cast at night from 7pm to 4pm.

* Update to include IsDayTime and replace magic numbers.
This commit is contained in:
regneq
2023-11-04 10:58:08 -07:00
committed by GitHub
parent d25cc35f1b
commit 1420983700
5 changed files with 45 additions and 0 deletions
+7
View File
@@ -1052,4 +1052,11 @@ enum ScribeSpellActions
Unmemorize
};
enum SpellTimeRestrictions
{
NoRestriction,
Day,
Night
};
#endif /*COMMON_EQ_CONSTANTS_H*/
+22
View File
@@ -200,3 +200,25 @@ void EQTime::ToString(TimeOfDay_Struct *t, std::string &str) {
buf[127] = '\0';
str = buf;
}
bool EQTime::IsDayTime() {
TimeOfDay_Struct tod; //Day time is 5am to 6:59pm (14 hours in-game)
GetCurrentEQTimeOfDay(&tod); //TODO: what if it fails and returns zero?
if (tod.hour >= 5 || tod.hour < 19) {
return true;
}
return false;
}
bool EQTime::IsNightTime() {
TimeOfDay_Struct tod; //Night time is 7pm to 4:59am (10 hours in-game)
GetCurrentEQTimeOfDay(&tod); //TODO: what if it fails and returns zero?
if (tod.hour >= 19 || tod.hour < 5) {
return true;
}
return false;
}
+2
View File
@@ -28,6 +28,8 @@ public:
uint32 getEQTimeZone() { return timezone; }
uint32 getEQTimeZoneHr() { return timezone/60; }
uint32 getEQTimeZoneMin() { return timezone%60; }
bool IsDayTime();
bool IsNightTime();
//Set functions
int SetCurrentEQTimeOfDay(TimeOfDay_Struct start_eq, time_t start_real);