1
This commit is contained in:
parent
83a35e8cfd
commit
50e68ed854
@ -122,12 +122,6 @@ static void SavePerfLog()
|
||||
|
||||
bool App::Init(int argc, char* argv[])
|
||||
{
|
||||
{
|
||||
auto env = std::make_shared<a8::lisp::GlobalScope>();
|
||||
auto p = a8::lisp::Expr::Compile("(+ 1 3 (+ 100 200))", env);
|
||||
auto ret = a8::lisp::Expr::Eval(p, env);
|
||||
a8::XPrintf("p:%s ret:%f\n", {p->ToXObject().ToJsonStr(), ret->ToXObject().ToJsonStr()});
|
||||
}
|
||||
signal(SIGPIPE, SIG_IGN);
|
||||
this->argc = argc;
|
||||
this->argv = argv;
|
||||
|
@ -31,6 +31,7 @@ void CallFuncBuff::Activate()
|
||||
break;
|
||||
case BuffCallFunc_e::kDecHp:
|
||||
{
|
||||
hold_param2_ = meta->GetBuffParam2(owner, skill_meta);
|
||||
}
|
||||
break;
|
||||
case BuffCallFunc_e::kMarkTag:
|
||||
|
@ -1,10 +1,28 @@
|
||||
#include "precompile.h"
|
||||
|
||||
#include <a8/magicenum.h>
|
||||
|
||||
#include "mt/SkillNumber.h"
|
||||
#include "mt/Skill.h"
|
||||
|
||||
IMPL_TABLE(mt::SkillNumber)
|
||||
|
||||
A8_DECLARE_CLASS_ENUM(SkillNumberLispField_e, int,
|
||||
damage,
|
||||
damage_addition,
|
||||
damage_change,
|
||||
shield,
|
||||
shield_addition,
|
||||
resume,
|
||||
resume_addition,
|
||||
speed,
|
||||
range,
|
||||
range2,
|
||||
range3,
|
||||
time,
|
||||
cd
|
||||
);
|
||||
|
||||
namespace mt
|
||||
{
|
||||
|
||||
@ -107,15 +125,100 @@ namespace mt
|
||||
|
||||
float SkillNumber::GetAttrByIdx(int idx)
|
||||
{
|
||||
|
||||
switch ((SkillNumberLispField_e)idx) {
|
||||
case SkillNumberLispField_e::damage:
|
||||
{
|
||||
return damage();
|
||||
}
|
||||
break;
|
||||
case SkillNumberLispField_e::damage_addition:
|
||||
{
|
||||
return damage_addition();
|
||||
}
|
||||
break;
|
||||
case SkillNumberLispField_e::damage_change:
|
||||
{
|
||||
return damage_change();
|
||||
}
|
||||
break;
|
||||
case SkillNumberLispField_e::shield:
|
||||
{
|
||||
return shield();
|
||||
}
|
||||
break;
|
||||
case SkillNumberLispField_e::shield_addition:
|
||||
{
|
||||
return shield_addition();
|
||||
}
|
||||
break;
|
||||
case SkillNumberLispField_e::speed:
|
||||
{
|
||||
return _float_speed;
|
||||
}
|
||||
break;
|
||||
case SkillNumberLispField_e::range:
|
||||
{
|
||||
return _float_range;
|
||||
}
|
||||
break;
|
||||
case SkillNumberLispField_e::range2:
|
||||
{
|
||||
return _float_range2;
|
||||
}
|
||||
break;
|
||||
case SkillNumberLispField_e::range3:
|
||||
{
|
||||
return _float_range3;
|
||||
}
|
||||
break;
|
||||
case SkillNumberLispField_e::time:
|
||||
{
|
||||
return _float_time;
|
||||
}
|
||||
break;
|
||||
case SkillNumberLispField_e::cd:
|
||||
{
|
||||
return _float_cd;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
{
|
||||
abort();
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
int SkillNumber::GetAttrIdxByName(const std::string& name)
|
||||
{
|
||||
if (name == "${skillNumber.speed}") {
|
||||
return 0;
|
||||
if (name == "${skillNumber.damage}") {
|
||||
return (int)SkillNumberLispField_e::damage;
|
||||
} else if (name == "${skillNumber.damage_addition}") {
|
||||
return (int)SkillNumberLispField_e::damage_addition;
|
||||
} else if (name == "${skillNumber.damage_change}") {
|
||||
return (int)SkillNumberLispField_e::damage_change;
|
||||
} else if (name == "${skillNumber.shield}") {
|
||||
return (int)SkillNumberLispField_e::shield;
|
||||
} else if (name == "${skillNumber.shield_addition}") {
|
||||
return (int)SkillNumberLispField_e::shield_addition;
|
||||
} else if (name == "${skillNumber.resume}") {
|
||||
return (int)SkillNumberLispField_e::resume;
|
||||
} else if (name == "${skillNumber.resume_addition}") {
|
||||
return (int)SkillNumberLispField_e::resume_addition;
|
||||
} else if (name == "${skillNumber.speed}") {
|
||||
return (int)SkillNumberLispField_e::speed;
|
||||
} else if (name == "${skillNumber.range}") {
|
||||
return (int)SkillNumberLispField_e::range;
|
||||
} else if (name == "${skillNumber.range2}") {
|
||||
return (int)SkillNumberLispField_e::range2;
|
||||
} else if (name == "${skillNumber.range3}") {
|
||||
return (int)SkillNumberLispField_e::range3;
|
||||
} else if (name == "${skillNumber.time}") {
|
||||
return (int)SkillNumberLispField_e::time;
|
||||
} else if (name == "${skillNumber.cd}") {
|
||||
return (int)SkillNumberLispField_e::cd;
|
||||
}
|
||||
return -1;
|
||||
abort();
|
||||
}
|
||||
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user