This commit is contained in:
@@ -134,9 +134,9 @@ TEST_CASE("Invoke OnInitialize script function") {
|
||||
ctx = ctxPool->RequestContext();
|
||||
script->PrepareMethod("GetStringValue"_cnc, ctx);
|
||||
REQUIRE(ctx->Execute() == asEXECUTION_FINISHED);
|
||||
// Arbutils::CaseInsensitiveConstString s;
|
||||
// s = *(Arbutils::CaseInsensitiveConstString*)ctx->GetReturnAddress();
|
||||
// REQUIRE(s == "foobar"_cnc);
|
||||
// Arbutils::CaseInsensitiveConstString s;
|
||||
// s = *(Arbutils::CaseInsensitiveConstString*)ctx->GetReturnAddress();
|
||||
// REQUIRE(s == "foobar"_cnc);
|
||||
ctxPool->ReturnContextToPool(ctx);
|
||||
|
||||
for (auto p : parameters) {
|
||||
|
||||
@@ -47,7 +47,7 @@ static AngelScriptResolver* GetScriptResolver(PkmnLib::Battling::BattleLibrary*
|
||||
if (_resolverCache == nullptr) {
|
||||
_resolverCache = dynamic_cast<AngelScriptResolver*>(PkmnLib::Battling::BattleLibrary::CreateScriptResolver());
|
||||
_resolverCache->Initialize(mainLib);
|
||||
_resolverCache->CreateScript("testScript1" , _scripts["testScript1"]);
|
||||
_resolverCache->CreateScript("testScript1", _scripts["testScript1"]);
|
||||
_resolverCache->FinalizeModule();
|
||||
}
|
||||
return _resolverCache;
|
||||
@@ -278,9 +278,9 @@ TEST_CASE("Validate Pokemon Damage in Script") {
|
||||
auto mainLib = TestLibrary::GetLibrary();
|
||||
|
||||
auto mon = PkmnLib::Battling::CreatePokemon(mainLib, "testSpecies3"_cnc, 30)
|
||||
.WithForme("default"_cnc)
|
||||
.WithGender(CreatureLib::Library::Gender::Male)
|
||||
.Build();
|
||||
.WithForme("default"_cnc)
|
||||
.WithGender(CreatureLib::Library::Gender::Male)
|
||||
.Build();
|
||||
auto data = GetScript(mainLib, "testDamage"_cnc);
|
||||
|
||||
data.Context->SetArgObject(0, const_cast<PkmnLib::Battling::Pokemon*>(mon));
|
||||
@@ -297,9 +297,9 @@ TEST_CASE("Validate Pokemon Heal in Script") {
|
||||
auto mainLib = TestLibrary::GetLibrary();
|
||||
|
||||
auto mon = PkmnLib::Battling::CreatePokemon(mainLib, "testSpecies3"_cnc, 30)
|
||||
.WithForme("default"_cnc)
|
||||
.WithGender(CreatureLib::Library::Gender::Male)
|
||||
.Build();
|
||||
.WithForme("default"_cnc)
|
||||
.WithGender(CreatureLib::Library::Gender::Male)
|
||||
.Build();
|
||||
mon->Damage(50, CreatureLib::Battling::DamageSource::AttackDamage);
|
||||
auto data = GetScript(mainLib, "testHeal"_cnc);
|
||||
|
||||
@@ -316,10 +316,10 @@ TEST_CASE("Validate Pokemon GetMoves in Script") {
|
||||
auto mainLib = TestLibrary::GetLibrary();
|
||||
|
||||
auto mon = PkmnLib::Battling::CreatePokemon(mainLib, "testSpecies3"_cnc, 30)
|
||||
.WithForme("default"_cnc)
|
||||
.LearnMove("testMove"_cnc, CreatureLib::Battling::AttackLearnMethod::Level)
|
||||
.LearnMove("testMove2"_cnc, CreatureLib::Battling::AttackLearnMethod::Unknown)
|
||||
.Build();
|
||||
.WithForme("default"_cnc)
|
||||
.LearnMove("testMove"_cnc, CreatureLib::Battling::AttackLearnMethod::Level)
|
||||
.LearnMove("testMove2"_cnc, CreatureLib::Battling::AttackLearnMethod::Unknown)
|
||||
.Build();
|
||||
|
||||
for (size_t i = 0; i < mon->GetMoves().Count(); i++) {
|
||||
auto data = GetScript(mainLib, "testMove"_cnc);
|
||||
@@ -339,9 +339,9 @@ TEST_CASE("Validate Pokemon HasHeldItem in Script") {
|
||||
auto mainLib = TestLibrary::GetLibrary();
|
||||
|
||||
auto mon = PkmnLib::Battling::CreatePokemon(mainLib, "testSpecies3"_cnc, 30)
|
||||
.WithForme("default"_cnc)
|
||||
.WithHeldItem("testItem"_cnc)
|
||||
.Build();
|
||||
.WithForme("default"_cnc)
|
||||
.WithHeldItem("testItem"_cnc)
|
||||
.Build();
|
||||
auto data = GetScript(mainLib, "testHasHeldItem"_cnc);
|
||||
|
||||
data.Context->SetArgObject(0, const_cast<PkmnLib::Battling::Pokemon*>(mon));
|
||||
@@ -351,9 +351,7 @@ TEST_CASE("Validate Pokemon HasHeldItem in Script") {
|
||||
REQUIRE(data.Context->Execute() == asEXECUTION_FINISHED);
|
||||
REQUIRE((bool)data.Context->GetReturnDWord());
|
||||
|
||||
|
||||
delete mon;
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
@@ -32,11 +32,11 @@ struct ScriptData {
|
||||
};
|
||||
|
||||
static AngelScriptResolver* _resolverCache = nullptr;
|
||||
static AngelScriptResolver* GetScriptResolver(PkmnLib::Battling::BattleLibrary* mainLib){
|
||||
if (_resolverCache == nullptr){
|
||||
static AngelScriptResolver* GetScriptResolver(PkmnLib::Battling::BattleLibrary* mainLib) {
|
||||
if (_resolverCache == nullptr) {
|
||||
_resolverCache = dynamic_cast<AngelScriptResolver*>(PkmnLib::Battling::BattleLibrary::CreateScriptResolver());
|
||||
_resolverCache->Initialize(mainLib);
|
||||
_resolverCache->CreateScript("testScript1" , _scripts["testScript1"]);
|
||||
_resolverCache->CreateScript("testScript1", _scripts["testScript1"]);
|
||||
_resolverCache->FinalizeModule();
|
||||
}
|
||||
return _resolverCache;
|
||||
|
||||
@@ -28,11 +28,11 @@ struct ScriptData {
|
||||
};
|
||||
|
||||
static AngelScriptResolver* _resolverCache = nullptr;
|
||||
static AngelScriptResolver* GetScriptResolver(PkmnLib::Battling::BattleLibrary* mainLib){
|
||||
if (_resolverCache == nullptr){
|
||||
static AngelScriptResolver* GetScriptResolver(PkmnLib::Battling::BattleLibrary* mainLib) {
|
||||
if (_resolverCache == nullptr) {
|
||||
_resolverCache = dynamic_cast<AngelScriptResolver*>(PkmnLib::Battling::BattleLibrary::CreateScriptResolver());
|
||||
_resolverCache->Initialize(mainLib);
|
||||
_resolverCache->CreateScript("testScript1" , _scripts["testScript1"]);
|
||||
_resolverCache->CreateScript("testScript1", _scripts["testScript1"]);
|
||||
_resolverCache->FinalizeModule();
|
||||
}
|
||||
return _resolverCache;
|
||||
@@ -72,7 +72,7 @@ TEST_CASE("Validate Item Category in Script") {
|
||||
|
||||
auto item = mainLib->GetItemLibrary()->Get("testItem"_cnc);
|
||||
data.Context->SetArgObject(0, const_cast<PkmnLib::Library::Item*>(item));
|
||||
data.Context->SetArgDWord(1, static_cast<int32_t >(item->GetCategory()));
|
||||
data.Context->SetArgDWord(1, static_cast<int32_t>(item->GetCategory()));
|
||||
|
||||
REQUIRE(data.Context->Execute() == asEXECUTION_FINISHED);
|
||||
REQUIRE((bool)data.Context->GetReturnWord());
|
||||
@@ -84,7 +84,7 @@ TEST_CASE("Validate Item Battle Category in Script") {
|
||||
|
||||
auto item = mainLib->GetItemLibrary()->Get("testItem"_cnc);
|
||||
data.Context->SetArgObject(0, const_cast<PkmnLib::Library::Item*>(item));
|
||||
data.Context->SetArgDWord(1, static_cast<int32_t >(item->GetBattleCategory()));
|
||||
data.Context->SetArgDWord(1, static_cast<int32_t>(item->GetBattleCategory()));
|
||||
|
||||
REQUIRE(data.Context->Execute() == asEXECUTION_FINISHED);
|
||||
REQUIRE((bool)data.Context->GetReturnWord());
|
||||
@@ -96,13 +96,10 @@ TEST_CASE("Validate Item Price in Script") {
|
||||
|
||||
auto item = mainLib->GetItemLibrary()->Get("testItem"_cnc);
|
||||
data.Context->SetArgObject(0, const_cast<PkmnLib::Library::Item*>(item));
|
||||
data.Context->SetArgDWord(1, static_cast<int32_t >(item->GetPrice()));
|
||||
data.Context->SetArgDWord(1, static_cast<int32_t>(item->GetPrice()));
|
||||
|
||||
REQUIRE(data.Context->Execute() == asEXECUTION_FINISHED);
|
||||
REQUIRE((bool)data.Context->GetReturnWord());
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
@@ -32,11 +32,11 @@ struct ScriptData {
|
||||
};
|
||||
|
||||
static AngelScriptResolver* _resolverCache = nullptr;
|
||||
static AngelScriptResolver* GetScriptResolver(PkmnLib::Battling::BattleLibrary* mainLib){
|
||||
if (_resolverCache == nullptr){
|
||||
static AngelScriptResolver* GetScriptResolver(PkmnLib::Battling::BattleLibrary* mainLib) {
|
||||
if (_resolverCache == nullptr) {
|
||||
_resolverCache = dynamic_cast<AngelScriptResolver*>(PkmnLib::Battling::BattleLibrary::CreateScriptResolver());
|
||||
_resolverCache->Initialize(mainLib);
|
||||
_resolverCache->CreateScript("testScript1" , _scripts["testScript1"]);
|
||||
_resolverCache->CreateScript("testScript1", _scripts["testScript1"]);
|
||||
_resolverCache->FinalizeModule();
|
||||
}
|
||||
return _resolverCache;
|
||||
@@ -157,5 +157,4 @@ TEST_CASE("Validate Move Priority in Script") {
|
||||
REQUIRE((bool)data.Context->GetReturnWord());
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
@@ -30,11 +30,11 @@ struct ScriptData {
|
||||
};
|
||||
|
||||
static AngelScriptResolver* _resolverCache = nullptr;
|
||||
static AngelScriptResolver* GetScriptResolver(PkmnLib::Battling::BattleLibrary* mainLib){
|
||||
if (_resolverCache == nullptr){
|
||||
static AngelScriptResolver* GetScriptResolver(PkmnLib::Battling::BattleLibrary* mainLib) {
|
||||
if (_resolverCache == nullptr) {
|
||||
_resolverCache = dynamic_cast<AngelScriptResolver*>(PkmnLib::Battling::BattleLibrary::CreateScriptResolver());
|
||||
_resolverCache->Initialize(mainLib);
|
||||
_resolverCache->CreateScript("testScript1" , _scripts["testScript1"]);
|
||||
_resolverCache->CreateScript("testScript1", _scripts["testScript1"]);
|
||||
_resolverCache->FinalizeModule();
|
||||
}
|
||||
return _resolverCache;
|
||||
@@ -60,8 +60,7 @@ TEST_CASE("Validate Species Name in Script") {
|
||||
auto data = GetScript(mainLib, "testName"_cnc);
|
||||
|
||||
auto species = mainLib->GetSpeciesLibrary()->Get("testSpecies2"_cnc);
|
||||
data.Context->SetArgObject(
|
||||
0, const_cast<PkmnLib::Library::PokemonSpecies*>(species));
|
||||
data.Context->SetArgObject(0, const_cast<PkmnLib::Library::PokemonSpecies*>(species));
|
||||
auto name = species->GetName();
|
||||
data.Context->SetArgAddress(1, &name);
|
||||
|
||||
@@ -76,8 +75,7 @@ TEST_CASE("Validate Species Id in Script") {
|
||||
auto data = GetScript(mainLib, "testId"_cnc);
|
||||
|
||||
auto species = mainLib->GetSpeciesLibrary()->Get("testSpecies2"_cnc);
|
||||
data.Context->SetArgObject(
|
||||
0, const_cast<PkmnLib::Library::PokemonSpecies*>(species));
|
||||
data.Context->SetArgObject(0, const_cast<PkmnLib::Library::PokemonSpecies*>(species));
|
||||
data.Context->SetArgWord(1, species->GetId());
|
||||
|
||||
auto result = data.Context->Execute();
|
||||
@@ -91,8 +89,7 @@ TEST_CASE("Validate Species Gender Rate in Script") {
|
||||
auto data = GetScript(mainLib, "testGenderRate"_cnc);
|
||||
|
||||
auto species = mainLib->GetSpeciesLibrary()->Get("testSpecies2"_cnc);
|
||||
data.Context->SetArgObject(
|
||||
0, const_cast<PkmnLib::Library::PokemonSpecies*>(species));
|
||||
data.Context->SetArgObject(0, const_cast<PkmnLib::Library::PokemonSpecies*>(species));
|
||||
data.Context->SetArgFloat(1, species->GetGenderRate());
|
||||
|
||||
auto result = data.Context->Execute();
|
||||
@@ -106,8 +103,7 @@ TEST_CASE("Validate Species Capture Rate in Script") {
|
||||
auto data = GetScript(mainLib, "testCaptureRate"_cnc);
|
||||
|
||||
auto species = mainLib->GetSpeciesLibrary()->Get("testSpecies2"_cnc);
|
||||
data.Context->SetArgObject(
|
||||
0, const_cast<PkmnLib::Library::PokemonSpecies*>(species));
|
||||
data.Context->SetArgObject(0, const_cast<PkmnLib::Library::PokemonSpecies*>(species));
|
||||
data.Context->SetArgByte(1, species->GetCaptureRate());
|
||||
|
||||
auto result = data.Context->Execute();
|
||||
@@ -121,12 +117,11 @@ TEST_CASE("Validate Species Get Forme in Script") {
|
||||
auto data = GetScript(mainLib, "testGetForme"_cnc);
|
||||
|
||||
auto species = mainLib->GetSpeciesLibrary()->Get("testSpecies2"_cnc);
|
||||
data.Context->SetArgObject(
|
||||
0, const_cast<PkmnLib::Library::PokemonSpecies*>(species));
|
||||
data.Context->SetArgObject(0, const_cast<PkmnLib::Library::PokemonSpecies*>(species));
|
||||
data.Context->SetArgObject(1, const_cast<PkmnLib::Library::PokemonForme*>(species->GetForme("default"_cnc)));
|
||||
|
||||
auto result = data.Context->Execute();
|
||||
if (result == asEXECUTION_EXCEPTION){
|
||||
if (result == asEXECUTION_EXCEPTION) {
|
||||
FAIL(data.Context->GetExceptionString());
|
||||
}
|
||||
REQUIRE(result == asEXECUTION_FINISHED);
|
||||
@@ -148,6 +143,4 @@ TEST_CASE("Validate Species Get Default Forme in Script") {
|
||||
REQUIRE(v);
|
||||
}
|
||||
|
||||
|
||||
|
||||
#endif
|
||||
@@ -31,11 +31,11 @@ struct ScriptData {
|
||||
};
|
||||
|
||||
static AngelScriptResolver* _resolverCache = nullptr;
|
||||
static AngelScriptResolver* GetScriptResolver(PkmnLib::Battling::BattleLibrary* mainLib){
|
||||
if (_resolverCache == nullptr){
|
||||
static AngelScriptResolver* GetScriptResolver(PkmnLib::Battling::BattleLibrary* mainLib) {
|
||||
if (_resolverCache == nullptr) {
|
||||
_resolverCache = dynamic_cast<AngelScriptResolver*>(PkmnLib::Battling::BattleLibrary::CreateScriptResolver());
|
||||
_resolverCache->Initialize(mainLib);
|
||||
_resolverCache->CreateScript("testScript1" , _scripts["testScript1"]);
|
||||
_resolverCache->CreateScript("testScript1", _scripts["testScript1"]);
|
||||
_resolverCache->FinalizeModule();
|
||||
}
|
||||
return _resolverCache;
|
||||
|
||||
Reference in New Issue
Block a user