84 int registerEffectsFromJson(
const std::string &json);
86 void clearEffectDefinitions();
88 int getEffectDefinitionCount();
91 int registerSkillsFromJson(
const std::string &json);
93 void clearSkillDefinitions();
95 int getSkillDefinitionCount();
98 int registerQuestsFromJson(
const std::string &json);
105 [[nodiscard]]
eve::Result<int> replaceQuestsFromJson(
const std::string &json);
106 void clearQuestDefinitions();
108 int getQuestDefinitionCount();
110 bool hasQuestDefinition(
const std::string &
id)
const;
139 const std::string ¤cyId,
140 const std::string &
itemId,
int quantity,
144 const std::string ¤cyId,
145 const std::string &
itemId,
int quantity,
148 [[nodiscard]]
eve::Result<int> replaceShopOffersFromJson(
const std::string &json);
150 int getShopOfferCount()
const;
152 void clearShopOffers();
154 bool hasShopOffer(
const std::string &offerId)
const;
156 std::string getShopOfferId(
int index)
const;
158 std::string getShopOfferItemId(
int index)
const;
160 std::string getShopOfferName(
int index)
const;
162 std::string getShopOfferDescription(
int index)
const;
164 int getShopOfferBuyPrice(
int index)
const;
166 int getShopOfferSellPrice(
int index)
const;
169 const std::string ¤cyId,
170 const std::string &offerId,
int quantity);
173 const std::string ¤cyId,
174 const std::string &offerId,
int quantity);
176 [[nodiscard]]
eve::Result<int> replaceEncountersFromJson(
const std::string &json);
177 void clearEncounters();
179 bool hasEncounter(
const std::string &encounterId)
const;
181 int getEncounterMemberCount(
const std::string &encounterId)
const;
190 RPGActor *newEncounterActor(
const std::string &encounterId);
199 RPGActor *newEncounterMemberActor(
const std::string &encounterId,
int memberIndex);
201 std::string getEncounterDisplayName(
const std::string &encounterId)
const;
203 double getEncounterMaxHp(
const std::string &encounterId)
const;
205 std::string getEncounterMemberDisplayName(
const std::string &encounterId,
int memberIndex)
const;
207 double getEncounterMemberMaxHp(
const std::string &encounterId,
int memberIndex)
const;
209 [[nodiscard]]
eve::Result<int> replaceBattleTacticsFromJson(
const std::string &json);
210 void clearBattleTactics();
213 const std::string &tacticsId);
215 [[nodiscard]]
eve::Result<int> replaceStoryEventsFromJson(
const std::string &json);
217 void clearStoryEvents();
219 int getStoryEventCount()
const;
221 bool hasStoryEvent(
const std::string &eventId)
const;
235 int getStoryCount()
const;
237 bool hasStory(
const std::string &storyId)
const;
249 const std::string &encounterId,
const std::string &mapId,
250 const std::string &objectId);
262 int getLevelUpEventCount()
const;
266 int getLevelUpEventPreviousLevel(
int index)
const;
268 int getLevelUpEventNewLevel(
int index)
const;
271 int getVitalsEventCount()
const;
275 std::string getVitalsEventResource(
int index)
const;
277 std::string getVitalsEventAction(
int index)
const;
279 double getVitalsEventAmount(
int index)
const;
281 std::string getVitalsEventSource(
int index)
const;
283 double getVitalsEventCurrent(
int index)
const;
285 double getVitalsEventMax(
int index)
const;
288 int registerItemStatsFromJson(
const std::string &
itemId,
const std::string &json);
290 void clearItemStats(
const std::string &
itemId);
292 void clearAllItemStats();
294 int getItemStatCount();
299 int registerLootTablesFromJson(
const std::string &json);
301 void clearLootTables();
303 int getLootTableCount();
308 int registerTraitsFromJson(
const std::string &json);
310 void clearTraitDefinitions();
312 int getTraitDefinitionCount();
315 int registerClassesFromJson(
const std::string &json);
317 void clearClassDefinitions();
319 int getClassDefinitionCount();
322 int registerSkillDamage(
const std::string &skillId,
const std::string &
damageType,
323 const std::string &formula,
const std::string &
element,
324 double critChance,
int hitChance);
326 void clearSkillDamage();
378 void update(
float dt);
381 int getTickEventCount()
const;
392 int getTickEventInstanceId(
int index)
const;
394 std::string getTickEventEffectId(
int index)
const;
396 std::string getTickEventSource(
int index)
const;
398 int getTickEventStacks(
int index)
const;
401 int getStatusChangeEventCount()
const;
412 int getStatusChangeEventInstanceId(
int index)
const;
414 std::string getStatusChangeEventEffectId(
int index)
const;
416 std::string getStatusChangeEventSource(
int index)
const;
418 std::string getStatusChangeEventAction(
int index)
const;
420 int getStatusChangeEventStacks(
int index)
const;
422 std::string getStatusChangeEventReason(
int index)
const;
425 int getCastEventCount()
const;
445 std::string getCastEventSkillId(
int index)
const;
459 int getSettlementStageCount(
const std::string &pipeline);
461 bool hasSettlementStage(
const std::string &pipeline,
const std::string &stage);
463 bool setSettlementStageEnabled(
const std::string &pipeline,
const std::string &stage,
466 bool setSettlementStagePriority(
const std::string &pipeline,
const std::string &stage,
469 bool removeSettlementStage(
const std::string &pipeline,
const std::string &stage);
471 void clearSettlementPipeline(
const std::string &pipeline);
474 std::vector<StatusTickEvent> ticks_;
475 std::vector<StatusChangeEvent> changes_;
476 std::vector<SkillCastEvent> casts_;
477 std::vector<LevelUpEvent> levelUps_;
478 std::vector<VitalsEvent> vitals_;
Caller-owned cursor over one published .dnut story.
Caller-owned runtime cursor over a copied story-event definition.
结算上下文:通用的读写数据袋,字段完全由调用方与各阶段自行约定。