Compare commits
5 Commits
639c1857c8
...
90912c0b90
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
90912c0b90 | ||
|
|
b74417debd | ||
|
|
c44695e580 | ||
|
|
759a256988 | ||
|
|
622105656b |
@ -79,20 +79,20 @@ void game::NpcCharacter::SpawnLoot()
|
||||
void game::NpcCharacter::MakeEnemy(net::EntNum enemy_num)
|
||||
{
|
||||
// it must have been a mistake
|
||||
if (Chance(0.1f))
|
||||
if (Chance(0.05f))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
// cant switch enemies that fast
|
||||
auto time = GetWorld().GetTime();
|
||||
if (enemy_num != enemy_num_ && time - enemy_time_ < 5000)
|
||||
if (enemy_num_ > 0 && enemy_num != enemy_num_ && time - enemy_time_ < 5000)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
// increase anger
|
||||
if (Chance(0.7f))
|
||||
if (Chance(0.85f))
|
||||
{
|
||||
follow_enemy_ = true;
|
||||
}
|
||||
|
||||
@ -84,9 +84,10 @@ game::OpenWorld::OpenWorld(Game& game) : EnterableWorld("openworld"), game_(game
|
||||
CreateTuningGarage(loc.transform.position, glm::eulerAngles(loc.transform.rotation).x);
|
||||
}
|
||||
|
||||
CreatePermaItemPickups("pickup_uzi", "uzi");
|
||||
CreatePermaItemPickups("pickup_ak47", "ak47");
|
||||
CreatePermaItemPickups("pickup_airsniper", "airsniper");
|
||||
CreatePermaItemPickups("airrifle");
|
||||
CreatePermaItemPickups("airsniper");
|
||||
CreatePermaItemPickups("ak47");
|
||||
CreatePermaItemPickups("uzi");
|
||||
|
||||
SpawnNpcs();
|
||||
|
||||
@ -353,12 +354,19 @@ void game::OpenWorld::CreateTuningGarage(const glm::vec3& position, float yaw)
|
||||
});
|
||||
}
|
||||
|
||||
void game::OpenWorld::CreatePermaItemPickups(const std::string& loc_name, const std::string& item_name)
|
||||
void game::OpenWorld::CreatePermaItemPickups(const std::string& item_name)
|
||||
{
|
||||
for (auto locs = GetMap().GetLocations(loc_name); const auto& loc : locs)
|
||||
for (auto locs = GetMap().GetLocations("pickup_" + item_name); const auto& loc : locs)
|
||||
{
|
||||
CreatePermaItemPickup(loc.transform.position, item_name);
|
||||
}
|
||||
|
||||
#ifndef NDEBUG
|
||||
for (auto locs = GetMap().GetLocations("pickup_" + item_name + "_debug"); const auto& loc : locs)
|
||||
{
|
||||
CreatePermaItemPickup(loc.transform.position, item_name);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
void game::OpenWorld::CreatePermaItemPickup(const glm::vec3& position, const std::string& item_name)
|
||||
|
||||
@ -25,7 +25,7 @@ private:
|
||||
void SpawnNpcVehicleWithPassengers();
|
||||
|
||||
void CreateTuningGarage(const glm::vec3& position, float yaw);
|
||||
void CreatePermaItemPickups(const std::string& loc_name, const std::string& item_name);
|
||||
void CreatePermaItemPickups(const std::string& item_name);
|
||||
void CreatePermaItemPickup(const glm::vec3& position, const std::string& item);
|
||||
|
||||
void RecoverPlayer(Player& player);
|
||||
|
||||
@ -12,8 +12,8 @@ game::PlayerCharacter::PlayerCharacter(World& world, Player& player, const Human
|
||||
SendUseTargetInfo();
|
||||
|
||||
// give some shit
|
||||
GiveItem(std::make_shared<ItemInstance>("airsniper"), false);
|
||||
GiveAmmo("pellet", 50);
|
||||
// GiveItem(std::make_shared<ItemInstance>("airsniper"), false);
|
||||
// GiveAmmo("pellet", 50);
|
||||
// GiveItem(std::make_shared<ItemInstance>("ak47"), false);
|
||||
// GiveItem(std::make_shared<ItemInstance>("uzi"), false);
|
||||
}
|
||||
|
||||
@ -416,6 +416,7 @@ void game::Vehicle::UpdateWheels()
|
||||
{
|
||||
auto& bt_wheel = vehicle.getWheelInfo(i);
|
||||
wheels_[i].speed = -(bt_wheel.m_rotation - wheels_[i].rotation) * 25.0f;
|
||||
bt_wheel.m_rotation = glm::mod(bt_wheel.m_rotation, glm::two_pi<float>()); // prevent going too crazy
|
||||
wheels_[i].rotation = bt_wheel.m_rotation;
|
||||
wheels_[i].z_offset = tuning_ctx_.wheels[i].z_offset - bt_wheel.m_raycastInfo.m_suspensionLength;
|
||||
|
||||
|
||||
@ -33,14 +33,52 @@ game::view::WorldView::WorldView(ClientSession& session, net::InMessage& msg) :
|
||||
map_->EnableObj(objnum, false);
|
||||
}
|
||||
|
||||
// cache common snds and stuff
|
||||
Cache(assets::CacheManager::GetSound("data/breaksign.snd"));
|
||||
// break sounds
|
||||
Cache(assets::CacheManager::GetSound("data/breakpatnik.snd"));
|
||||
Cache(assets::CacheManager::GetSound("data/breaksign.snd"));
|
||||
Cache(assets::CacheManager::GetSound("data/breakwindow.snd"));
|
||||
Cache(assets::CacheManager::GetSound("data/breakwood.snd"));
|
||||
Cache(assets::CacheManager::GetSound("data/cardoor.snd"));
|
||||
Cache(assets::CacheManager::GetSound("data/crash.snd"));
|
||||
|
||||
// vehicles
|
||||
Cache(assets::CacheManager::GetVehicleModel("data/avia.veh"));
|
||||
Cache(assets::CacheManager::GetVehicleModel("data/passat.veh"));
|
||||
Cache(assets::CacheManager::GetVehicleModel("data/pickup_hd.veh"));
|
||||
Cache(assets::CacheManager::GetVehicleModel("data/polskifiat.veh"));
|
||||
Cache(assets::CacheManager::GetVehicleModel("data/twingo.veh"));
|
||||
|
||||
// models
|
||||
Cache(assets::CacheManager::GetModel("data/marker_base.mdl"));
|
||||
Cache(assets::CacheManager::GetModel("data/marker_tuning.mdl"));
|
||||
|
||||
// items
|
||||
Cache(assets::CacheManager::GetItem("data/airrifle.item"));
|
||||
Cache(assets::CacheManager::GetItem("data/airsniper.item"));
|
||||
Cache(assets::CacheManager::GetItem("data/ak47.item"));
|
||||
Cache(assets::CacheManager::GetItem("data/uzi.item"));
|
||||
|
||||
// fire sounds
|
||||
Cache(assets::CacheManager::GetSound("data/airrifle_fire.snd"));
|
||||
Cache(assets::CacheManager::GetSound("data/ak_fire.snd"));
|
||||
Cache(assets::CacheManager::GetSound("data/uzi_fire.snd"));
|
||||
|
||||
// other sounds
|
||||
Cache(assets::CacheManager::GetSound("data/pickup_ammo.snd"));
|
||||
Cache(assets::CacheManager::GetSound("data/cow-01.snd"));
|
||||
Cache(assets::CacheManager::GetSound("data/cow-02.snd"));
|
||||
Cache(assets::CacheManager::GetSound("data/cow-04.snd"));
|
||||
Cache(assets::CacheManager::GetSound("data/cow-05.snd"));
|
||||
|
||||
// fx
|
||||
Cache(assets::CacheManager::GetEffect("data/firefx.fx"));
|
||||
Cache(assets::CacheManager::GetEffect("data/impact_dirt.fx"));
|
||||
Cache(assets::CacheManager::GetEffect("data/impact_flesh.fx"));
|
||||
Cache(assets::CacheManager::GetEffect("data/impact_grass.fx"));
|
||||
Cache(assets::CacheManager::GetEffect("data/impact_metal.fx"));
|
||||
Cache(assets::CacheManager::GetEffect("data/impact_stone.fx"));
|
||||
Cache(assets::CacheManager::GetEffect("data/impact_wood.fx"));
|
||||
|
||||
env_ = std::make_unique<WorldEnv>();
|
||||
env_->SetDayTime(12.0f);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user