This commit is contained in:
aozhiwei 2023-01-01 15:15:41 +08:00
parent 4937c702fd
commit 7352091f8b

View File

@ -1450,61 +1450,51 @@ void Human::DeadDrop()
{ {
Skin* old_skin = GetSkinByIdx(kSkinSlot_HAT); Skin* old_skin = GetSkinByIdx(kSkinSlot_HAT);
if (old_skin && old_skin->skin_id != 0 && SkinCanDrop(old_skin)) { if (old_skin && old_skin->skin_id != 0 && SkinCanDrop(old_skin)) {
a8::Vec2 dir = a8::Vec2::UP; glm::vec3 dir = GlmHelper::UP;
dir.Rotate(a8::RandAngle()); GlmHelper::RotateY(dir, a8::RandAngle());
// 999 Position drop_pos = GetPos();
#if 1 drop_pos.AddGlmVec3(dir * (40.0f + rand() % 50));
#else room->CreateLoot(old_skin->skin_id, drop_pos, 1, 1);
room->CreateLoot(old_skin->skin_id, GetPos() + dir * (40 + rand() % 50), 1, 1);
#endif
*old_skin = Skin(); *old_skin = Skin();
} }
} }
{ {
Skin* old_skin = GetSkinByIdx(kSkinSlot_CLOTH); Skin* old_skin = GetSkinByIdx(kSkinSlot_CLOTH);
if (old_skin && old_skin->skin_id != 0 && SkinCanDrop(old_skin)) { if (old_skin && old_skin->skin_id != 0 && SkinCanDrop(old_skin)) {
a8::Vec2 dir = a8::Vec2::UP; glm::vec3 dir = GlmHelper::UP;
dir.Rotate(a8::RandAngle()); GlmHelper::RotateY(dir, a8::RandAngle());
// 999 Position drop_pos = GetPos();
#if 1 drop_pos.AddGlmVec3(dir * (40.0f + rand() % 50));
#else room->CreateLoot(old_skin->skin_id, drop_pos, 1, 1);
room->CreateLoot(old_skin->skin_id, GetPos() + dir * (40 + rand() % 50), 1, 1);
#endif
*old_skin = Skin(); *old_skin = Skin();
} }
} }
{ {
//头盔 //头盔
if (helmet != 0) { if (helmet != 0) {
a8::Vec2 dir = a8::Vec2::UP; glm::vec3 dir = GlmHelper::UP;
dir.Rotate(a8::RandAngle()); GlmHelper::RotateY(dir, a8::RandAngle());
// 999 Position drop_pos = GetPos();
#if 1 drop_pos.AddGlmVec3(dir * (40.0f + rand() % 50));
#else room->CreateLoot(helmet, drop_pos, 1, 1);
room->CreateLoot(helmet, GetPos() + dir * (40 + rand() % 50), 1, 1);
#endif
helmet = 0; helmet = 0;
} }
//衣服 //衣服
if (chest != 0) { if (chest != 0) {
a8::Vec2 dir = a8::Vec2::UP; glm::vec3 dir = GlmHelper::UP;
dir.Rotate(a8::RandAngle()); GlmHelper::RotateY(dir, a8::RandAngle());
// 999 Position drop_pos = GetPos();
#if 1 drop_pos.AddGlmVec3(dir * (40.0f + rand() % 50));
#else room->CreateLoot(chest, drop_pos, 1, 1);
room->CreateLoot(chest, GetPos() + dir * (40 + rand() % 50), 1, 1);
#endif
chest = 0; chest = 0;
} }
//背包 //背包
if (backpack != 0) { if (backpack != 0) {
a8::Vec2 dir = a8::Vec2::UP; glm::vec3 dir = GlmHelper::UP;
dir.Rotate(a8::RandAngle()); GlmHelper::RotateY(dir, a8::RandAngle());
// 999 Position drop_pos = GetPos();
#if 1 drop_pos.AddGlmVec3(dir * (40.0f + rand() % 50));
#else room->CreateLoot(backpack, drop_pos, 1, 1);
room->CreateLoot(backpack, GetPos() + dir * (40 + rand() % 50), 1, 1);
#endif
backpack = 0; backpack = 0;
} }
} }
@ -1558,10 +1548,8 @@ void Human::DeadDrop()
break; break;
} }
} else { } else {
#if 0 Position drop_pos = GetPos();
a8::Vec2 drop_pos = GetPos();
room->DropItem(drop_pos, equip_meta->id(), GetInventory(slot), 1); room->DropItem(drop_pos, equip_meta->id(), GetInventory(slot), 1);
#endif
} }
} }
} }