void ChronoDuino::openRaceAction() { OpenRaceDialog open_race(this); if (open_race.exec() == QDialog::Accepted) initRace(); }
void ChronoDuino::newRaceAction() { NewRaceDialog new_race(this); if (new_race.exec() == QDialog::Accepted) initRace(); }
void D20StatusSystem::D20StatusRefresh(objHndl objHnd) { Dispatcher *dispatcher; logger->info("Refreshing D20 Status for {}", description.getDisplayName(objHnd)); dispatcher = objects.GetDispatcher(objHnd); if (dispatch.dispatcherValid(dispatcher)){ dispatch.PackDispatcherIntoObjFields(objHnd, dispatcher); dispatch.DispatcherClearPermanentMods(dispatcher); initClass(objHnd); initRace(objHnd); initFeats(objHnd); D20StatusInitFromInternalFields(objHnd, dispatcher); } }
void D20StatusSystem::D20StatusInit(objHndl objHnd) { static int debugLol = 0; Dispatcher * dispatcher = objects.GetDispatcher(objHnd); if (dispatcher != nullptr && (uint32_t)dispatcher != 0xFFFFFFFF) { return; } dispatcher = objects.dispatch.DispatcherInit(objHnd); objects.SetDispatcher(objHnd, (uint32_t)dispatcher); objects.dispatch.DispatcherClearPermanentMods(dispatcher); if (objects.IsCritter(objHnd)) { // hooked_print_debug_message("D20Status Init for %s", description.getDisplayName(objHnd)); initClass(objHnd); initRace(objHnd); initFeats(objHnd); } else { logger->info("Attempted D20Status Init for non-critter {}", description.getDisplayName(objHnd)); debugLol++; if (debugLol % 1000 == 1) { auto lololol = 0; } } initItemConditions(objHnd); d20StatusSys.D20StatusInitFromInternalFields(objHnd, dispatcher); d20ObjRegistrySys.Append(objHnd); if (*objects.d20.d20EditorMode != 0){ return; } if (objects.IsCritter(objHnd)) { if (!objects.IsDeadNullDestroyed(objHnd)) { int hpCur = static_cast<int>(objects.StatLevelGet(objHnd, stat_hp_current)); uint32_t subdualDam = objects.getInt32(objHnd, obj_f_critter_subdual_damage); if (hpCur != -65535) { if (hpCur < 0) { if (feats.HasFeatCount(objHnd, FEAT_DIEHARD)) { _ConditionAdd_NumArgs0(dispatcher, conds.ConditionDisabled); } else { _ConditionAdd_NumArgs0(dispatcher, conds.ConditionUnconscious); } } else { if (hpCur == 0) { _ConditionAdd_NumArgs0(dispatcher, conds.ConditionDisabled); } else if (subdualDam > hpCur) { _ConditionAdd_NumArgs0(dispatcher, conds.ConditionUnconscious); } } } } } return; }