mirror of
https://gitlab.com/YuukiPS/GSServer-CBT.git
synced 2025-08-05 11:17:05 +03:00
melon
This commit is contained in:
143
soggy_resources/lua/UAuto/TestCases/element/ElementBase.lua
Normal file
143
soggy_resources/lua/UAuto/TestCases/element/ElementBase.lua
Normal file
@@ -0,0 +1,143 @@
|
||||
local baseClass = require('UAuto/Base/UAutoLuaTestBase')
|
||||
local UAutoLuaTestCase = class("ElementBase", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "ElementBase"
|
||||
self.base = TestCaseElementBaseClass()
|
||||
|
||||
-- c#中写了120,这边先写着不改
|
||||
self.FindTimeOut = 120
|
||||
self.Range = 3
|
||||
|
||||
self.WaterPos = "2735.608 194.2695 -1718.194"
|
||||
self.WaterPosVec = CS.UnityEngine.Vector3(2735.608, 194.2695, -1718.194)
|
||||
|
||||
self.WaterPos1 = "2731.309 194.2681 -1716.102"
|
||||
self.WaterPosVec1 = CS.UnityEngine.Vector3(2731.309, 194.2681, -1716.102)
|
||||
|
||||
self.GrassPos = "1955.741 196.5956 -1298.704"
|
||||
self.GrassPosVec = CS.UnityEngine.Vector3(1955.741, 196.5956, -1298.704)
|
||||
|
||||
-- self.sandPos = "2755.103 194.8858 -5811.606"
|
||||
-- self.sandPosVec = CS.UnityEngine.Vector3(2755.103, 194.8858, -5811.606)
|
||||
|
||||
|
||||
self.MonsterInfoTitle = {"element", "id", "keyword", "fatrange"}
|
||||
self.MonsterArray = {}
|
||||
table.insert(self.MonsterArray, {"Water", 20011101, "Slime_Water_03", 3})
|
||||
table.insert(self.MonsterArray, {"Water", 20011001, "Slime_Water_02", 1})
|
||||
-- table.insert(self.MonsterArray, {"Water", 22010301, "Abyss_Water_01", 3})
|
||||
-- table.insert(self.MonsterArray, {"Water", 21030101, "Shaman_Water_01", 1})
|
||||
table.insert(self.MonsterArray, {"Ice", 20010901, "Slime_Ice_03", 3})
|
||||
-- table.insert(self.MonsterArray, {"Ice", 20010801, "Slime_Ice_02", 1})
|
||||
-- table.insert(self.MonsterArray, {"Ice", 22010201, "Abyss_Ice_01", 3})
|
||||
table.insert(self.MonsterArray, {"Fire", 20011301, "Slime_Fire_03", 3})
|
||||
table.insert(self.MonsterArray, {"Fire", 20011201, "Slime_Fire_02", 1})
|
||||
-- table.insert(self.MonsterArray, {"Fire", 22010101, "Abyss_Fire_01", 3})
|
||||
table.insert(self.MonsterArray, {"Electric", 20010601, "Slime_Electric_03", 3})
|
||||
table.insert(self.MonsterArray, {"Electric", 20010701, "Slime_Electric_03_Positive", 3})
|
||||
table.insert(self.MonsterArray, {"Electric", 20010501, "Slime_Electric_02", 1})
|
||||
table.insert(self.MonsterArray, {"Grass", 20010101, "Slime_Grass_02", 1})
|
||||
table.insert(self.MonsterArray, {"Grass", 20010201, "Slime_Grass_03", 3})
|
||||
-- table.insert(self.MonsterArray, {"Grass", 21030201, "Shaman_Grass_01", 1})
|
||||
table.insert(self.MonsterArray, {"Rock", 20011501, "Slime_Rock_03", 3})
|
||||
-- table.insert(self.MonsterArray, {"Rock", 20011401, "Slime_Rock_02", 1})
|
||||
|
||||
|
||||
self.GadgetInfoTitle = {"element", "type", "id", "campid", "keyword", "owner", "otherinfo"}
|
||||
self.GadgetArray = {}
|
||||
-- table.insert(self.GadgetArray, {"Grass", "AvatarWeapon", 50010007, 0, "Equip_Sword_Wooden", "Ayaka", 10011})
|
||||
table.insert(self.GadgetArray, {"Grass", "MonsterWeapon", 50004002, 0, "MonEquip_Shield_01", 21010301, ""})
|
||||
table.insert(self.GadgetArray, {"Grass", "MonsterWeapon", 50004012, 0, "MonEquip_Shield_02", 21020101, ""})
|
||||
table.insert(self.GadgetArray, {"Grass", "Item", 70220003, 5001, "Item_BrambleWall01", "", ""})
|
||||
table.insert(self.GadgetArray, {"Grass", "Item", 70220005, 5001, "Item_Bombbarrel01", "", ""})
|
||||
|
||||
|
||||
function self:GetArray(title, array)
|
||||
local rsArray = {}
|
||||
|
||||
for i, content in pairs(array) do
|
||||
local tmpDic = {}
|
||||
for j = 1, #title do
|
||||
-- title里有的内容,array里必须有
|
||||
tmpDic[title[j]] = content[j]
|
||||
end
|
||||
table.insert(rsArray, tmpDic)
|
||||
end
|
||||
|
||||
return rsArray
|
||||
end
|
||||
|
||||
function self:GetMatchArray(t, k, v)
|
||||
local rsArray = {}
|
||||
|
||||
for i, item in pairs(t) do
|
||||
if(item[k] == v) then
|
||||
table.insert(rsArray, item)
|
||||
end
|
||||
end
|
||||
|
||||
return rsArray
|
||||
end
|
||||
|
||||
|
||||
function self:GetMonsterArrayByElement(element)
|
||||
local rsArray = self:GetArray(self.MonsterInfoTitle, self.MonsterArray)
|
||||
return self:GetMatchArray(rsArray, "element", element)
|
||||
end
|
||||
|
||||
function self:GetOneMonsterByElement(element)
|
||||
return self:GetMonsterArrayByElement(element)[1]
|
||||
end
|
||||
|
||||
function self:GetGadgetArrayByElement(element)
|
||||
local rsArray = self:GetArray(self.GadgetInfoTitle, self.GadgetArray)
|
||||
return self:GetMatchArray(rsArray, "element", element)
|
||||
end
|
||||
|
||||
function self:GetAvatarWeaponArrayByElement(element)
|
||||
local gadgetArray = self:GetGadgetArrayByElement(element)
|
||||
return self:GetMatchArray(gadgetArray, "type", "AvatarWeapon")
|
||||
end
|
||||
|
||||
function self:GetOneAvatarWeaponByElement(element)
|
||||
return self:GetAvatarWeaponArrayByElement(element)[1]
|
||||
end
|
||||
|
||||
function self:GetMonsterWeaponArrayByElement(element)
|
||||
local gadgetArray = self:GetGadgetArrayByElement(element)
|
||||
return self:GetMatchArray(gadgetArray, "type", "MonsterWeapon")
|
||||
end
|
||||
|
||||
function self:GetOneMonsterWeaponByElement(element)
|
||||
return self:GetMonsterWeaponArrayByElement(element)[1]
|
||||
end
|
||||
|
||||
function self:GetItemArrayByElement(element)
|
||||
local gadgetArray = self:GetGadgetArrayByElement(element)
|
||||
return self:GetMatchArray(gadgetArray, "type", "Item")
|
||||
end
|
||||
|
||||
function self:GetOneItemByElement(element)
|
||||
return self:GetItemArrayByElement(element)[1]
|
||||
end
|
||||
|
||||
|
||||
local windEntityNum = 0
|
||||
function self:GetWindEntityCount()
|
||||
windEntityNum = self.base:GetEntityCount("Eff_WindField_FireGrass")
|
||||
end
|
||||
|
||||
function self:CheckWindEntityCount(signal)
|
||||
local tmp = self.base:GetEntityCount("Eff_WindField_FireGrass")
|
||||
if(signal == "-") then
|
||||
assert(tmp < windEntityNum, "风场未移除!")
|
||||
windEntityNum = tmp
|
||||
end
|
||||
if(signal == "+") then
|
||||
assert(tmp > windEntityNum, "风场未出现!")
|
||||
windEntityNum = tmp
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
return self
|
@@ -0,0 +1,47 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("ElectricComponent", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "ElectricComponent"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素成分-电"
|
||||
|
||||
self.Element = "Electric"
|
||||
self.MonsterArray = self:GetMonsterArrayByElement(self.Element)
|
||||
self.GadgetArray = self:GetGadgetArrayByElement(self.Element)
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckMonster = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "检查怪物电元素成分",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.GrassPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
for i, monster in pairs(self.MonsterArray) do
|
||||
self.base:CreateMonster(monster["id"])
|
||||
yield_return(self:WaitFoundEntity(monster["keyword"]))
|
||||
yield_return(self.base:CheckElementContain(self.Element, self.foundEntity))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
end
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckAvatar = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "检查武将电元素成分:雷泽释放充能技",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self:ChangeAvatar("Razor"))
|
||||
yield_return(self.base:RunGM("ENERGY INFINITE ON"))
|
||||
yield_return(self.base:Skill(4))
|
||||
yield_return(self.base:CheckElementContain(self.Element))
|
||||
end)
|
||||
}
|
||||
|
||||
|
||||
return self
|
@@ -0,0 +1,61 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("ElectricFireReaction", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "ElectricFireReaction"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素反应-电<-火"
|
||||
|
||||
self.Element = "Electric"
|
||||
self.CatalystElement = "Fire"
|
||||
|
||||
self.ElementMonster = self:GetOneMonsterByElement(self.Element)
|
||||
self.CatalystMonster = self:GetOneMonsterByElement(self.CatalystElement)
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckMonster = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "电元素怪物与火反应",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.GrassPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.ElementMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.ElementMonster["keyword"]))
|
||||
yield_return(self.base:RunGM("WUDI MONSTER ON"))
|
||||
|
||||
yield_return(self:ChangeAvatar("Anbo"))
|
||||
yield_return(self.base:RunGM("ENERGY INFINITE ON"))
|
||||
yield_return(self.base:MoveToEntity(self.foundEntity, self.FindTimeOut, self.ElementMonster["fatrange"]))
|
||||
yield_return(self.base:Skill(4))
|
||||
yield_return(self.base:CheckElectricReaction(self.CatalystElement, self.foundEntity))
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckAvatar = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "电元素武将与火反应",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self:ChangeAvatar("Razor"))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
yield_return(self.base:RunGM("ENERGY INFINITE ON"))
|
||||
yield_return(self.base:Skill(4))
|
||||
self.base:MonsterAI(true)
|
||||
|
||||
-- self.base:CreateMonster(self.iceTypicalMonster[1])
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.CatalystMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.CatalystMonster["keyword"]))
|
||||
|
||||
yield_return(self.base:CheckElectricReaction(self.CatalystElement))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
end)
|
||||
}
|
||||
|
||||
|
||||
return self
|
@@ -0,0 +1,46 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("ElectricReaction", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "ElectricReaction"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素反应-电"
|
||||
|
||||
self.Element = "Electric"
|
||||
|
||||
self.NegativeMonster = self:GetMonsterArrayByElement(self.Element)[1]
|
||||
self.PositiveMonster = self:GetMonsterArrayByElement(self.Element)[2]
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckElectricShock = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "电元素怪物对武将的电击效果",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.GrassPos,true,true))
|
||||
yield_return(self.base:RunGM("LEVEL 1"))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.NegativeMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.NegativeMonster["keyword"]))
|
||||
yield_return(self.base:CheckAnimateOn("ElectricShock"))
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckPosNegElectric = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "正负电元素怪物通电效果",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.PositiveMonster["id"]).." 1 1"))
|
||||
yield_return(self.base:CheckElectricReaction("ElectricPositive", self.foundEntity))
|
||||
yield_return(self.base:CheckElectricReaction("DischargeOff", self.foundEntity))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
end)
|
||||
}
|
||||
|
||||
|
||||
return self
|
@@ -0,0 +1,34 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("FireComponent", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "FireComponent"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素成分-火"
|
||||
|
||||
self.Element = "Fire"
|
||||
self.MonsterArray = self:GetMonsterArrayByElement(self.Element)
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckMonster = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "检查怪物火元素成分",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.GrassPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
for i, monster in pairs(self.MonsterArray) do
|
||||
self.base:CreateMonster(monster["id"])
|
||||
yield_return(self:WaitFoundEntity(monster["keyword"]))
|
||||
self.base:MonsterDoSkill(self.foundEntity, 0)
|
||||
yield_return(self.base:CheckElementContain(self.Element, self.foundEntity))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
end
|
||||
end)
|
||||
}
|
||||
|
||||
|
||||
return self
|
@@ -0,0 +1,39 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("FireElectricReaction", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "FireElectricReaction"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素反应-火<-电"
|
||||
|
||||
self.Element = "Fire"
|
||||
self.CatalystElement = "Electric"
|
||||
|
||||
self.ElementMonster = self:GetOneMonsterByElement(self.Element)
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckMonster = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "火元素怪物与电反应",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.GrassPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.ElementMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.ElementMonster["keyword"]))
|
||||
yield_return(self.base:RunGM("WUDI MONSTER ON"))
|
||||
self.base:MonsterDoSkill(self.foundEntity, 0)
|
||||
|
||||
yield_return(self:ChangeAvatar("Razor"))
|
||||
yield_return(self.base:MoveToEntity(self.foundEntity, self.FindTimeOut, self.ElementMonster["fatrange"]))
|
||||
yield_return(self.base:Skill(1))
|
||||
yield_return(self.base:CheckFireReaction(self.CatalystElement, self.foundEntity))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
end)
|
||||
}
|
||||
|
||||
|
||||
return self
|
@@ -0,0 +1,40 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("FireReaction", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "FireReaction"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素反应-火"
|
||||
|
||||
self.Element = "Fire"
|
||||
|
||||
self.ElementMonster = self:GetOneMonsterByElement(self.Element)
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckFireElementAdd = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "火攻补充火元素",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.WaterPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.ElementMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.ElementMonster["keyword"]))
|
||||
yield_return(self.base:RunGM("WUDI MONSTER ON"))
|
||||
yield_return(self.base:CheckElementRemove(self.Element, self.foundEntity))
|
||||
|
||||
yield_return(self:ChangeAvatar("Anbo"))
|
||||
yield_return(self.base:RunGM("ENERGY INFINITE ON"))
|
||||
yield_return(self.base:MoveToEntity(self.foundEntity, self.FindTimeOut, self.ElementMonster["fatrange"]))
|
||||
yield_return(self.base:Skill(4))
|
||||
yield_return(self.base:CheckElementContain(self.Element, self.foundEntity))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
|
||||
end)
|
||||
}
|
||||
|
||||
|
||||
return self
|
@@ -0,0 +1,50 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("FireWaterReaction", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "FireWaterReaction"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素反应-火<-水"
|
||||
|
||||
self.Element = "Fire"
|
||||
self.CatalystElement = "Water"
|
||||
|
||||
self.ElementMonster = self:GetOneMonsterByElement(self.Element)
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckMonster = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "火元素怪物与水反应",
|
||||
Action = UAutoCoroutine(function()
|
||||
-- yield_return(self.base:RunGM("goto "..self.GrassPos,true,true))
|
||||
-- yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
-- yield_return(self.base:RunGM("WUDI ON"))
|
||||
-- self.base:MonsterAI(true)
|
||||
|
||||
-- yield_return(self.base:RunGM("MONSTER "..tostring(self.ElementMonster["id"]).." 1 1"))
|
||||
-- yield_return(self:WaitFoundEntity(self.ElementMonster["keyword"]))
|
||||
-- yield_return(self.base:RunGM("WUDI MONSTER ON"))
|
||||
|
||||
-- yield_return(self:ChangeAvatar("Barbara"))
|
||||
-- yield_return(self.base:MoveToEntity(self.foundEntity, self.FindTimeOut, self.ElementMonster["fatrange"]))
|
||||
-- yield_return(self.base:Skill(1))
|
||||
-- yield_return(self.base:CheckElementRemove(self.Element, self.foundEntity))
|
||||
-- yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
|
||||
yield_return(self.base:RunGM("goto "..self.WaterPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.ElementMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.ElementMonster["keyword"]))
|
||||
yield_return(self.base:RunGM("WUDI MONSTER ON"))
|
||||
|
||||
yield_return(self.base:CheckElementRemove(self.Element, self.foundEntity))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
end)
|
||||
}
|
||||
|
||||
|
||||
return self
|
@@ -0,0 +1,62 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("GrassComponent", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "GrassComponent"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素成分-草"
|
||||
|
||||
self.Element = "Grass"
|
||||
self.MonsterArray = self:GetMonsterArrayByElement(self.Element)
|
||||
self.GadgetArray = self:GetGadgetArrayByElement(self.Element)
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckMonster = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "检查怪物草元素成分",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.GrassPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
for i, monster in pairs(self.MonsterArray) do
|
||||
self.base:CreateMonster(monster["id"])
|
||||
yield_return(self:WaitFoundEntity(monster["keyword"]))
|
||||
yield_return(self.base:CheckElementContain(self.Element, self.foundEntity))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
end
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckGadget = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "检查物件(含武器等)草元素成分",
|
||||
Action = UAutoCoroutine(function()
|
||||
for i, gadget in pairs(self.GadgetArray) do
|
||||
self.base:CreateGadget(gadget["id"], gadget["campid"], self.GrassPosVec)
|
||||
yield_return(self:WaitFoundEntity(gadget["keyword"]))
|
||||
yield_return(self.base:CheckElementContain(self.Element, self.foundEntity))
|
||||
yield_return(self.base:RemoveEntity(self.foundEntity))
|
||||
end
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckAvatar = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "检查武将草元素成分",
|
||||
Action = UAutoCoroutine(function()
|
||||
self.entityManager = singletonManager:GetSingletonInstance("MoleMole.EntityManager")
|
||||
self.localAvatar = self.entityManager:GetLocalAvatarEntity()
|
||||
self.base:CreateGadget(42001015, 4001, self.localAvatar.transform.position)
|
||||
yield_return(self.base:CheckElementContain(self.Element))
|
||||
end)
|
||||
}
|
||||
|
||||
|
||||
return self
|
@@ -0,0 +1,131 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("GrassFireReaction", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "GrassFireReaction"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素反应-草<-火"
|
||||
|
||||
self.Element = "Grass"
|
||||
self.CatalystElement = "Fire"
|
||||
|
||||
self.ElementMonster = self:GetOneMonsterByElement(self.Element)
|
||||
self.CatalystMonster = self:GetOneMonsterByElement(self.CatalystElement)
|
||||
self.ElementAvatarWeapon = self:GetOneAvatarWeaponByElement(self.Element)
|
||||
self.ElementMonsterWeapon = self:GetOneMonsterWeaponByElement(self.Element)
|
||||
self.ElementItem = self:GetOneItemByElement(self.Element)
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckMonster = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "草元素怪物与火反应:着火,草元素耗尽",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.GrassPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
self:GetWindEntityCount()
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.ElementMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.ElementMonster["keyword"]))
|
||||
yield_return(self.base:RunGM("WUDI MONSTER ON"))
|
||||
|
||||
yield_return(self:ChangeAvatar("Anbo"))
|
||||
yield_return(self.base:RunGM("ENERGY INFINITE ON"))
|
||||
yield_return(self.base:MoveToEntity(self.foundEntity, self.FindTimeOut, self.ElementMonster["fatrange"]))
|
||||
yield_return(self.base:Skill(4))
|
||||
yield_return(self.base:CheckGrassReaction(self.CatalystElement, self.foundEntity))
|
||||
yield_return(self.base:CheckElementRemove(self.Element, self.foundEntity))
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckEnv = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "草元素环境与火反应:着火,起风,风灭,不再点燃",
|
||||
Action = UAutoCoroutine(function()
|
||||
self:CheckWindEntityCount("+")
|
||||
yield_return(self.base:CheckGrassEnvReaction(self.CatalystElement))
|
||||
-- yield_return(self.base:CheckGrassEnvReaction("AntiFire"))
|
||||
yield_return(CS.UnityEngine.WaitForSeconds(10))
|
||||
self:CheckWindEntityCount("-")
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckMonsterWeapon = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "草元素怪物武器与火反应:着火,移除",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.ElementMonsterWeapon["owner"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.ElementMonsterWeapon["keyword"]))
|
||||
yield_return(self.base:RunGM("WUDI MONSTER ON"))
|
||||
yield_return(self.base:Skill(4))
|
||||
yield_return(self.base:CheckGrassReaction(self.CatalystElement, self.foundEntity))
|
||||
yield_return(self.base:CheckEntityRemove(self.foundEntity.runtimeID))
|
||||
end)
|
||||
}
|
||||
|
||||
-- self.OrderIndex = self.OrderIndex + 1;
|
||||
-- self.CheckAvatarWeapon = {
|
||||
-- Order = self.OrderIndex,
|
||||
-- Type = CaseType.MonoTest,
|
||||
-- Description = "草元素武将武器与火反应:着火",
|
||||
-- Action = UAutoCoroutine(function()
|
||||
-- yield_return(self:ChangeAvatar(self.ElementAvatarWeapon["owner"]))
|
||||
-- yield_return(self.base:RunGM("EQUIP ADD "..tostring(self.ElementAvatarWeapon["otherinfo"])))
|
||||
-- yield_return(self:WaitFoundEntity(self.ElementAvatarWeapon["keyword"]))
|
||||
-- yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
-- yield_return(self.base:RunGM("WUDI ON"))
|
||||
-- self.base:MonsterAI(true)
|
||||
|
||||
-- yield_return(self.base:RunGM("MONSTER "..tostring(self.CatalystMonster["id"]).." 1 1"))
|
||||
-- yield_return(self.base:CheckGrassReaction(self.CatalystElement, self.foundEntity))
|
||||
-- end)
|
||||
-- }
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckGadget = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "草元素物件与火反应:着火,移除",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.GrassPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self:ChangeAvatar("Anbo"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
yield_return(self.base:RunGM("GADGET "..tostring(self.ElementItem["id"]).." 1"))
|
||||
yield_return(self:WaitFoundEntity(self.ElementItem["keyword"]))
|
||||
yield_return(self.base:MoveToEntity(self.foundEntity, self.FindTimeOut, self.Range))
|
||||
yield_return(self.base:Skill(4))
|
||||
yield_return(self.base:CheckGrassReaction(self.CatalystElement, self.foundEntity))
|
||||
yield_return(self.base:CheckEntityRemove(self.foundEntity.runtimeID))
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckAvatar = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "草元素武将与火反应:着火,草元素销毁",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(true)
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.CatalystMonster["id"]).." 1 1"))
|
||||
self.entityManager = singletonManager:GetSingletonInstance("MoleMole.EntityManager")
|
||||
self.localAvatar = self.entityManager:GetLocalAvatarEntity()
|
||||
self.base:CreateGadget(42001015, 4001, self.localAvatar.transform.position)
|
||||
self.base:CreateGadget(42001015, 4001, self.localAvatar.transform.position)
|
||||
self.base:CreateGadget(42001015, 4001, self.localAvatar.transform.position)
|
||||
self.base:CreateGadget(42001015, 4001, self.localAvatar.transform.position)
|
||||
yield_return(self.base:CheckGrassReaction(self.CatalystElement))
|
||||
yield_return(self.base:CheckElementRemove(self.Element))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
end)
|
||||
}
|
||||
|
||||
return self
|
@@ -0,0 +1,79 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("IceComponent", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "IceComponent"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素成分-冰"
|
||||
|
||||
self.Element = "Ice"
|
||||
self.SubElement = "Frozen"
|
||||
self.MonsterArray = self:GetMonsterArrayByElement(self.Element)
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckMonster = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "检查怪物冰元素成分",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.GrassPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
for i, monster in pairs(self.MonsterArray) do
|
||||
self.base:CreateMonster(monster["id"])
|
||||
yield_return(self:WaitFoundEntity(monster["keyword"]))
|
||||
yield_return(self.base:CheckElementContain(self.SubElement, self.foundEntity))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
end
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckAvatar = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "检查武将冰元素成分:被冰史莱姆攻击",
|
||||
Action = UAutoCoroutine(function()
|
||||
self.base:MonsterAI(true)
|
||||
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.MonsterArray[1]["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.MonsterArray[1]["keyword"]))
|
||||
yield_return(self.base:CheckElementContain(self.Element))
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckEnv = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "检查怪物落在水面结冰",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.WaterPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.MonsterArray[1]["id"]).." 1 1"))
|
||||
yield_return(self.base:CheckWaterEnvReaction(self.Element))
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckEnv2 = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "检查武将冰技能打在水面结冰",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("goto "..self.WaterPos,true,true))
|
||||
|
||||
yield_return(self:ChangeAvatar("Ayaka"))
|
||||
yield_return(self.base:Skill(1))
|
||||
yield_return(self.base:CheckWaterEnvReaction(self.Element))
|
||||
end)
|
||||
}
|
||||
|
||||
|
||||
return self
|
@@ -0,0 +1,66 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("IceFireReaction", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "IceFireReaction"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素反应-冰<-火"
|
||||
|
||||
self.Element = "Ice"
|
||||
self.SubElement = "Frozen"
|
||||
self.CatalystElement = "Fire"
|
||||
|
||||
self.ElementMonster = self:GetOneMonsterByElement(self.Element)
|
||||
self.CatalystMonster = self:GetOneMonsterByElement(self.CatalystElement)
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckMonster = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "冰元素怪物与火反应:蒸气、冰属性销毁",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.GrassPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.ElementMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.ElementMonster["keyword"]))
|
||||
yield_return(self.base:RunGM("WUDI MONSTER ON"))
|
||||
|
||||
yield_return(self:ChangeAvatar("Diluc"))
|
||||
yield_return(self.base:RunGM("ENERGY INFINITE ON"))
|
||||
yield_return(self.base:MoveToEntity(self.foundEntity, self.FindTimeOut, self.ElementMonster["fatrange"]))
|
||||
yield_return(self.base:Skill(4))
|
||||
yield_return(self.base:CheckIceReaction(self.CatalystElement, self.foundEntity))
|
||||
-- yield_return(self.base:CheckElementRemove(self.SubElement, self.foundEntity))
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckEnv = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "冰元素水面与火反应:蒸气、冰面消失",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.WaterPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.ElementMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.ElementMonster["keyword"]))
|
||||
|
||||
yield_return(self:ChangeAvatar("Anbo"))
|
||||
yield_return(self.base:RunGM("ENERGY INFINITE ON"))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:Skill(4))
|
||||
yield_return(self.base:CheckWaterEnvReaction("Steam"))
|
||||
yield_return(self.base:CheckWaterEnvReactionRemove(self.Element))
|
||||
end)
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
return self
|
@@ -0,0 +1,33 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("RockComponent", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "RockComponent"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素成分-岩"
|
||||
|
||||
self.Element = "Rock"
|
||||
self.MonsterArray = self:GetMonsterArrayByElement(self.Element)
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckMonster = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "检查怪物岩元素成分",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.GrassPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
for i, monster in pairs(self.MonsterArray) do
|
||||
self.base:CreateMonster(monster["id"])
|
||||
yield_return(self:WaitFoundEntity(monster["keyword"]))
|
||||
yield_return(self.base:CheckElementContain(self.Element, self.foundEntity))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
end
|
||||
end)
|
||||
}
|
||||
|
||||
|
||||
return self
|
@@ -0,0 +1,76 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("WaterComponent", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "WaterComponent"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素成分-水"
|
||||
|
||||
self.Element = "Water"
|
||||
self.MonsterArray = self:GetMonsterArrayByElement(self.Element)
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckMonster = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "检查怪物水元素成分",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self:FinishAllNoob())
|
||||
yield_return(self.base:RunGM("goto "..self.GrassPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
for i, monster in pairs(self.MonsterArray) do
|
||||
self.base:CreateMonster(monster["id"])
|
||||
yield_return(self:WaitFoundEntity(monster["keyword"]))
|
||||
yield_return(self.base:CheckElementContain(self.Element, self.foundEntity))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
end
|
||||
end)
|
||||
}
|
||||
|
||||
-- self.OrderIndex = self.OrderIndex + 1;
|
||||
-- self.CheckAvatar1 = {
|
||||
-- Order = self.OrderIndex,
|
||||
-- Type = CaseType.MonoTest,
|
||||
-- Description = "检查武将水元素成分:绫华释放技能2",
|
||||
-- Action = UAutoCoroutine(function()
|
||||
-- yield_return(self:ChangeAvatar("Ayaka"))
|
||||
-- yield_return(self.base:Skill(2))
|
||||
-- yield_return(self.base:CheckElementContain(self.Element))
|
||||
-- end)
|
||||
-- }
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckAvatar2 = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "检查武将水元素成分:被水史莱姆攻击",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self:ChangeAvatar("Anbo"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(true)
|
||||
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.MonsterArray[1]["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.MonsterArray[1]["keyword"]))
|
||||
yield_return(self.base:CheckElementContain(self.Element))
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckEnv2Avatar = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "检查武将靠近水",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self:ChangeAvatar("Ayaka"))
|
||||
yield_return(self.base:RunGM("goto "..self.WaterPos,true,true))
|
||||
yield_return(self.base:MoveToPosition(self.WaterPosVec1))
|
||||
yield_return(self.base:CheckElementContain(self.Element))
|
||||
end)
|
||||
}
|
||||
|
||||
|
||||
return self
|
@@ -0,0 +1,72 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("WaterElectricReaction", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "WaterElectricReaction"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素反应-水<-电"
|
||||
|
||||
self.Element = "Water"
|
||||
self.CatalystElement = "Electric"
|
||||
|
||||
self.ElementMonster = self:GetOneMonsterByElement(self.Element)
|
||||
self.CatalystMonster = self:GetOneMonsterByElement(self.CatalystElement)
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckEnv = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "水元素环境与电反应",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.WaterPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
|
||||
yield_return(self:ChangeAvatar("Razor"))
|
||||
yield_return(self.base:RunGM("ENERGY INFINITE ON"))
|
||||
yield_return(self.base:Skill(1))
|
||||
yield_return(self.base:CheckWaterEnvReaction(self.CatalystElement))
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckAvatar = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "水元素武将与电反应",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.WaterPos,true,true))
|
||||
yield_return(self:ChangeAvatar("Ayaka"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(true)
|
||||
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.CatalystMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.CatalystMonster["keyword"]))
|
||||
|
||||
-- yield_return(self.base:RunGM("MONSTER "..tostring(self.ElementMonster["id"]).." 1 1"))
|
||||
-- yield_return(self:WaitFoundEntity(self.ElementMonster["keyword"]))
|
||||
yield_return(self.base:CheckWaterReaction(self.CatalystElement))
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckMonster = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "水元素怪物与电反应",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
self.base:MonsterAI(false)
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.ElementMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.ElementMonster["keyword"]))
|
||||
yield_return(self:ChangeAvatar("Razor"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
yield_return(self.base:MoveToEntity(self.foundEntity, self.FindTimeOut, self.ElementMonster["fatrange"]))
|
||||
yield_return(self.base:Skill(1))
|
||||
yield_return(self.base:CheckWaterReaction(self.CatalystElement, self.foundEntity))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
end)
|
||||
}
|
||||
|
||||
|
||||
return self
|
@@ -0,0 +1,73 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("WaterFireReaction", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "WaterFireReaction"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素反应-水<-火"
|
||||
|
||||
self.Element = "Water"
|
||||
self.CatalystElement = "Fire"
|
||||
|
||||
self.ElementMonster = self:GetOneMonsterByElement(self.Element)
|
||||
self.CatalystMonster = self:GetOneMonsterByElement(self.CatalystElement)
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckMonster = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "水元素怪物与火反应",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.GrassPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.ElementMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.ElementMonster["keyword"]))
|
||||
yield_return(self.base:RunGM("WUDI MONSTER ON"))
|
||||
|
||||
yield_return(self:ChangeAvatar("Anbo"))
|
||||
yield_return(self.base:RunGM("ENERGY INFINITE ON"))
|
||||
yield_return(self.base:MoveToEntity(self.foundEntity, self.FindTimeOut, self.ElementMonster["fatrange"]))
|
||||
yield_return(self.base:Skill(4))
|
||||
yield_return(self.base:CheckWaterReaction(self.CatalystElement, self.foundEntity))
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckAvatar = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "水元素武将与火反应",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(true)
|
||||
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.CatalystMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.CatalystMonster["keyword"]))
|
||||
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.ElementMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.ElementMonster["keyword"]))
|
||||
|
||||
yield_return(self.base:CheckWaterReaction(self.CatalystElement))
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckEnv = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "水元素环境与火反应",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.WaterPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self:ChangeAvatar("Anbo"))
|
||||
yield_return(self.base:Skill(4))
|
||||
yield_return(self.base:CheckWaterEnvReaction("Steam"))
|
||||
end)
|
||||
}
|
||||
|
||||
|
||||
return self
|
@@ -0,0 +1,66 @@
|
||||
local baseClass = require("UAuto/TestCases/Element/ElementBase")
|
||||
local UAutoLuaTestCase = class("WaterIceReaction", baseClass)
|
||||
local self = UAutoLuaTestCase
|
||||
self.TestFixture = "WaterIceReaction"
|
||||
self.Category = "元素"
|
||||
self.Description = "元素反应-水<-冰"
|
||||
|
||||
self.Element = "Water"
|
||||
self.CatalystElement = "Ice"
|
||||
|
||||
self.ElementMonster = self:GetOneMonsterByElement(self.Element)
|
||||
self.CatalystMonster = self:GetOneMonsterByElement(self.CatalystElement)
|
||||
|
||||
|
||||
self.OrderIndex = 1;
|
||||
self.CheckMonster = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "水元素怪物与冰反应",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.GrassPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(false)
|
||||
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.ElementMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.ElementMonster["keyword"]))
|
||||
yield_return(self.base:RunGM("WUDI MONSTER ON"))
|
||||
|
||||
yield_return(self:ChangeAvatar("Ayaka"))
|
||||
yield_return(self.base:MoveToEntity(self.foundEntity, self.FindTimeOut, self.ElementMonster["fatrange"]))
|
||||
yield_return(self.base:Skill(1))
|
||||
yield_return(self.base:CheckWaterReaction(self.CatalystElement, self.foundEntity))
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckAvatar = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "水元素武将与冰反应",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:RunGM("goto "..self.WaterPos,true,true))
|
||||
yield_return(self.base:RunGM("KILL MONSTER ALL"))
|
||||
yield_return(self.base:RunGM("WUDI ON"))
|
||||
self.base:MonsterAI(true)
|
||||
|
||||
yield_return(self.base:MoveToPosition(self.WaterPosVec1))
|
||||
yield_return(self.base:RunGM("MONSTER "..tostring(self.CatalystMonster["id"]).." 1 1"))
|
||||
yield_return(self:WaitFoundEntity(self.CatalystMonster["keyword"]))
|
||||
yield_return(self.base:CheckWaterReaction(self.CatalystElement))
|
||||
end)
|
||||
}
|
||||
|
||||
self.OrderIndex = self.OrderIndex + 1;
|
||||
self.CheckEnv = {
|
||||
Order = self.OrderIndex,
|
||||
Type = CaseType.MonoTest,
|
||||
Description = "水元素环境与冰反应",
|
||||
Action = UAutoCoroutine(function()
|
||||
yield_return(self.base:CheckWaterEnvReaction(self.CatalystElement))
|
||||
end)
|
||||
}
|
||||
|
||||
|
||||
return self
|
Reference in New Issue
Block a user