1
This commit is contained in:
parent
a7756abb7e
commit
d980926932
@ -233,6 +233,7 @@ enum BulletType_e
|
|||||||
BulletType_Normal = 1, //普通子弹
|
BulletType_Normal = 1, //普通子弹
|
||||||
BulletType_Missile = 2, //导弹
|
BulletType_Missile = 2, //导弹
|
||||||
BulletType_FireBomb = 3, //燃烧弹
|
BulletType_FireBomb = 3, //燃烧弹
|
||||||
|
BulletType_Trace = 4, //追踪弹(超出射程无伤害)
|
||||||
};
|
};
|
||||||
|
|
||||||
enum ColliderTag_e
|
enum ColliderTag_e
|
||||||
|
@ -215,7 +215,7 @@ void Human::Shot()
|
|||||||
}
|
}
|
||||||
|
|
||||||
DirectShot(curr_weapon->meta, 0);
|
DirectShot(curr_weapon->meta, 0);
|
||||||
if (curr_weapon->meta->i->equip_subtype() == BulletType_Missile) {
|
if (curr_weapon->meta->NeedTrace()) {
|
||||||
room->xtimer.AddDeadLineTimerAndAttach(curr_weapon->meta->i->time() * SERVER_FRAME_RATE,
|
room->xtimer.AddDeadLineTimerAndAttach(curr_weapon->meta->i->time() * SERVER_FRAME_RATE,
|
||||||
a8::XParams()
|
a8::XParams()
|
||||||
.SetSender(this)
|
.SetSender(this)
|
||||||
@ -257,10 +257,10 @@ void Human::DirectShot(MetaData::Equip* bullet_meta, int skill_id)
|
|||||||
}
|
}
|
||||||
bullet_dir.Rotate(bullet_angle / 180.0f);
|
bullet_dir.Rotate(bullet_angle / 180.0f);
|
||||||
int hit_time = 0;
|
int hit_time = 0;
|
||||||
if (bullet_meta->i->equip_subtype() == BulletType_Missile) {
|
if (bullet_meta->NeedTrace()) {
|
||||||
hit_time = bullet_meta->i->time() * 1000;
|
hit_time = bullet_meta->i->time() * 1000;
|
||||||
}
|
}
|
||||||
if (bullet_meta->i->equip_subtype() == BulletType_Missile) {
|
if (bullet_meta->NeedTrace()) {
|
||||||
if (skill_id != 0) {
|
if (skill_id != 0) {
|
||||||
room->frame_event.AddBullet(this, bullet_meta->i->id(),
|
room->frame_event.AddBullet(this, bullet_meta->i->id(),
|
||||||
curr_weapon->weapon_lv, bullet_born_pos, bullet_dir,
|
curr_weapon->weapon_lv, bullet_born_pos, bullet_dir,
|
||||||
@ -2078,7 +2078,7 @@ void Human::ProcSkillPhase(MetaData::SkillPhase* phase)
|
|||||||
MetaData::Equip* bullet_meta = MetaMgr::Instance()->GetEquip(phase->param1.GetInt());
|
MetaData::Equip* bullet_meta = MetaMgr::Instance()->GetEquip(phase->param1.GetInt());
|
||||||
if (bullet_meta) {
|
if (bullet_meta) {
|
||||||
DirectShot(bullet_meta, skill_meta->i->skill_id());
|
DirectShot(bullet_meta, skill_meta->i->skill_id());
|
||||||
if (bullet_meta->i->equip_subtype() == BulletType_Missile) {
|
if (bullet_meta->NeedTrace()) {
|
||||||
room->xtimer.AddDeadLineTimerAndAttach(bullet_meta->i->time() * SERVER_FRAME_RATE,
|
room->xtimer.AddDeadLineTimerAndAttach(bullet_meta->i->time() * SERVER_FRAME_RATE,
|
||||||
a8::XParams()
|
a8::XParams()
|
||||||
.SetSender(this)
|
.SetSender(this)
|
||||||
|
@ -87,6 +87,13 @@ namespace MetaData
|
|||||||
return i->equip_type() == EquipType_Bullet && MetaMgr::Instance()->fighting_mode;
|
return i->equip_type() == EquipType_Bullet && MetaMgr::Instance()->fighting_mode;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool Equip::NeedTrace()
|
||||||
|
{
|
||||||
|
return i->equip_type() == EquipType_Bullet &&
|
||||||
|
i->equip_subtype() == BulletType_Missile &&
|
||||||
|
i->equip_subtype() == BulletType_Trace;
|
||||||
|
}
|
||||||
|
|
||||||
void Player::Init()
|
void Player::Init()
|
||||||
{
|
{
|
||||||
{
|
{
|
||||||
|
@ -56,6 +56,7 @@ namespace MetaData
|
|||||||
|
|
||||||
void Init();
|
void Init();
|
||||||
bool CanDrop();
|
bool CanDrop();
|
||||||
|
bool NeedTrace();
|
||||||
};
|
};
|
||||||
|
|
||||||
struct Player
|
struct Player
|
||||||
|
Loading…
x
Reference in New Issue
Block a user