1
This commit is contained in:
parent
42ab7714f8
commit
7dda3bffb3
@ -189,6 +189,13 @@ namespace MetaData
|
||||
int_param2 = a8::XValue(i->param2());
|
||||
float_param2 = a8::XValue(i->param2()).GetDouble();
|
||||
}
|
||||
{
|
||||
std::vector<std::string> strings;
|
||||
a8::Split(i->param2(), strings, '|');
|
||||
for (auto& str : strings) {
|
||||
param2_list.push_back(a8::XValue(str));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void Equip::Init()
|
||||
|
@ -54,6 +54,7 @@ namespace MetaData
|
||||
int int_param2 = 0;
|
||||
float float_param2 = 0;
|
||||
long long sweep_tags = 0;
|
||||
std::vector<int> param2_list;
|
||||
|
||||
void Init();
|
||||
};
|
||||
|
@ -430,9 +430,15 @@ void RoomObstacle::ActiveGully()
|
||||
|
||||
void RoomObstacle::ActiveAirDrop()
|
||||
{
|
||||
int delay_time = 0;
|
||||
int appear_time = 0;
|
||||
if (meta->param2_list.size() >= 2) {
|
||||
delay_time = meta->param2_list[0];
|
||||
appear_time = meta->param2_list[1];
|
||||
}
|
||||
room->xtimer.AddDeadLineTimerAndAttach
|
||||
(
|
||||
meta->int_param2 / FRAME_RATE_MS,
|
||||
(delay_time + appear_time) / FRAME_RATE_MS,
|
||||
a8::XParams()
|
||||
.SetSender(this),
|
||||
[] (const a8::XParams& param)
|
||||
@ -449,15 +455,17 @@ void RoomObstacle::ActiveAirDrop()
|
||||
});
|
||||
room->xtimer.AddDeadLineTimerAndAttach
|
||||
(
|
||||
0,
|
||||
//meta->int_param2 / FRAME_RATE_MS * 1,
|
||||
delay_time / FRAME_RATE_MS,
|
||||
a8::XParams()
|
||||
.SetSender(this),
|
||||
.SetSender(this)
|
||||
.SetParam1(delay_time)
|
||||
.SetParam2(appear_time)
|
||||
.SetParam3(meta->int_param1),
|
||||
[] (const a8::XParams& param)
|
||||
{
|
||||
RoomObstacle* obstacle = (RoomObstacle*)param.sender.GetUserData();
|
||||
obstacle->room->frame_event.AddAirDrop(obstacle->meta->int_param2,
|
||||
obstacle->meta->int_param1,
|
||||
obstacle->room->frame_event.AddAirDrop(param.param2,
|
||||
param.param3,
|
||||
obstacle->GetPos());
|
||||
},
|
||||
&xtimer_attacher.timer_list_
|
||||
|
Loading…
x
Reference in New Issue
Block a user