1
This commit is contained in:
parent
5d2039cb28
commit
324aaadb0a
@ -377,22 +377,34 @@ void Bullet::ProcPosionGasBomb(int delay_time)
|
|||||||
task->bomb_pos = GetPos();
|
task->bomb_pos = GetPos();
|
||||||
task->gun_meta = gun_meta;
|
task->gun_meta = gun_meta;
|
||||||
task->meta = meta;
|
task->meta = meta;
|
||||||
room->xtimer.AddDeadLineTimerAndAttach
|
|
||||||
(std::max(1, (int)(delay_time / FRAME_RATE_MS)),
|
room->xtimer.AddRepeatTimerAndAttach
|
||||||
|
(SERVER_FRAME_RATE / 2,
|
||||||
a8::XParams()
|
a8::XParams()
|
||||||
.SetSender(task),
|
.SetSender(task),
|
||||||
[] (const a8::XParams& param)
|
[] (const a8::XParams& param)
|
||||||
{
|
{
|
||||||
PosionGasMiTask* task = (PosionGasMiTask*)param.sender.GetUserData();
|
PosionGasMiTask* task = (PosionGasMiTask*)param.sender.GetUserData();
|
||||||
task->Done();
|
task->Check();
|
||||||
},
|
},
|
||||||
&task->timer_attacher.timer_list_,
|
&task->timer_attacher.timer_list_);
|
||||||
|
|
||||||
|
room->xtimer.AddDeadLineTimerAndAttach
|
||||||
|
(SERVER_FRAME_RATE * MetaMgr::Instance()->GetSysParamAsInt("smoke_duration", 10),
|
||||||
|
a8::XParams()
|
||||||
|
.SetSender(task),
|
||||||
|
[] (const a8::XParams& param)
|
||||||
|
{
|
||||||
|
},
|
||||||
|
&room->timer_attacher.timer_list_,
|
||||||
[] (const a8::XParams& param)
|
[] (const a8::XParams& param)
|
||||||
{
|
{
|
||||||
PosionGasMiTask* task = (PosionGasMiTask*)param.sender.GetUserData();
|
PosionGasMiTask* task = (PosionGasMiTask*)param.sender.GetUserData();
|
||||||
|
task->Done();
|
||||||
delete task;
|
delete task;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -405,19 +417,30 @@ void Bullet::ProcMolotorCocktailBomb(int delay_time)
|
|||||||
task->bomb_pos = GetPos();
|
task->bomb_pos = GetPos();
|
||||||
task->gun_meta = gun_meta;
|
task->gun_meta = gun_meta;
|
||||||
task->meta = meta;
|
task->meta = meta;
|
||||||
room->xtimer.AddDeadLineTimerAndAttach
|
|
||||||
(std::max(1, (int)(delay_time / FRAME_RATE_MS)),
|
room->xtimer.AddRepeatTimerAndAttach
|
||||||
|
(SERVER_FRAME_RATE / 2,
|
||||||
a8::XParams()
|
a8::XParams()
|
||||||
.SetSender(task),
|
.SetSender(task),
|
||||||
[] (const a8::XParams& param)
|
[] (const a8::XParams& param)
|
||||||
{
|
{
|
||||||
MolotorCocktailMiTask* task = (MolotorCocktailMiTask*)param.sender.GetUserData();
|
MolotorCocktailMiTask* task = (MolotorCocktailMiTask*)param.sender.GetUserData();
|
||||||
task->Done();
|
task->Check();
|
||||||
},
|
},
|
||||||
&task->timer_attacher.timer_list_,
|
&task->timer_attacher.timer_list_);
|
||||||
|
|
||||||
|
room->xtimer.AddDeadLineTimerAndAttach
|
||||||
|
(SERVER_FRAME_RATE * MetaMgr::Instance()->GetSysParamAsInt("smoke_duration", 10),
|
||||||
|
a8::XParams()
|
||||||
|
.SetSender(task),
|
||||||
|
[] (const a8::XParams& param)
|
||||||
|
{
|
||||||
|
},
|
||||||
|
&room->timer_attacher.timer_list_,
|
||||||
[] (const a8::XParams& param)
|
[] (const a8::XParams& param)
|
||||||
{
|
{
|
||||||
MolotorCocktailMiTask* task = (MolotorCocktailMiTask*)param.sender.GetUserData();
|
MolotorCocktailMiTask* task = (MolotorCocktailMiTask*)param.sender.GetUserData();
|
||||||
|
task->Done();
|
||||||
delete task;
|
delete task;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
@ -5,6 +5,10 @@
|
|||||||
#include "player.h"
|
#include "player.h"
|
||||||
#include "metadata.h"
|
#include "metadata.h"
|
||||||
|
|
||||||
|
void MolotorCocktailMiTask::Check()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
void MolotorCocktailMiTask::Done()
|
void MolotorCocktailMiTask::Done()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
@ -19,5 +19,6 @@ class MolotorCocktailMiTask : public MicroTask
|
|||||||
MetaData::Equip* gun_meta = nullptr;
|
MetaData::Equip* gun_meta = nullptr;
|
||||||
MetaData::Equip* meta = nullptr;
|
MetaData::Equip* meta = nullptr;
|
||||||
|
|
||||||
|
void Check();
|
||||||
void Done();
|
void Done();
|
||||||
};
|
};
|
||||||
|
@ -5,6 +5,11 @@
|
|||||||
#include "player.h"
|
#include "player.h"
|
||||||
#include "metadata.h"
|
#include "metadata.h"
|
||||||
|
|
||||||
|
void PosionGasMiTask::Check()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
void PosionGasMiTask::Done()
|
void PosionGasMiTask::Done()
|
||||||
{
|
{
|
||||||
|
|
||||||
|
@ -19,5 +19,6 @@ class PosionGasMiTask : public MicroTask
|
|||||||
MetaData::Equip* gun_meta = nullptr;
|
MetaData::Equip* gun_meta = nullptr;
|
||||||
MetaData::Equip* meta = nullptr;
|
MetaData::Equip* meta = nullptr;
|
||||||
|
|
||||||
|
void Check();
|
||||||
void Done();
|
void Done();
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user