Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void main()
- {
- Hive ce = CreateHive();
- if ( ce )
- ce.InitOffline();
- Weather weather = g_Game.GetWeather();
- weather.GetOvercast().SetLimits( 0.0 , 1.0 );
- weather.GetRain().SetLimits( 0.0 , 1.0 );
- weather.GetFog().SetLimits( 0.0 , 0.25 );
- weather.GetOvercast().SetForecastChangeLimits( 0.0, 0.2 );
- weather.GetRain().SetForecastChangeLimits( 0.0, 0.1 );
- weather.GetFog().SetForecastChangeLimits( 0.15, 0.45 );
- weather.GetOvercast().SetForecastTimeLimits( 1800 , 1800 );
- weather.GetRain().SetForecastTimeLimits( 600 , 600 );
- weather.GetFog().SetForecastTimeLimits( 1800 , 1800 );
- weather.GetOvercast().Set( Math.RandomFloatInclusive(0.0, 0.3), 0, 0);
- weather.GetRain().Set( Math.RandomFloatInclusive(0.0, 0.2), 0, 0);
- weather.GetFog().Set( Math.RandomFloatInclusive(0.0, 0.1), 0, 0);
- weather.SetWindMaximumSpeed(15);
- weather.SetWindFunctionParams(0.1, 0.3, 50);
- }
- class CustomMission: MissionServer
- {
- void SetRandomHealth(EntityAI itemEnt)
- {
- int rndHlt = Math.RandomInt(40,100);
- itemEnt.SetHealth("","",rndHlt);
- }
- override PlayerBase CreateCharacter(PlayerIdentity identity, vector pos, ParamsReadContext ctx, string characterName)
- {
- Entity playerEnt;
- playerEnt = GetGame().CreatePlayer(identity, characterName, pos, 0, "NONE");//Creates random player
- Class.CastTo(m_player, playerEnt);
- GetGame().SelectPlayer(identity, m_player);
- return m_player;
- }
- override void StartingEquipSetup(PlayerBase player, bool clothesChosen)
- {
- /*
- player.RemoveAllItems();
- EntityAI item = player.GetInventory().CreateInInventory(topsArray.GetRandomElement());
- EntityAI item2 = player.GetInventory().CreateInInventory(pantsArray.GetRandomElement());
- EntityAI item3 = player.GetInventory().CreateInInventory(shoesArray.GetRandomElement());
- */
- EntityAI itemEnt;
- ItemBase itemBs;
- itemEnt = player.GetInventory().CreateInInventory("Rag");
- itemBs = ItemBase.Cast(itemEnt);
- itemBs.SetQuantity(4);
- SetRandomHealth(itemEnt);
- itemEnt = player.GetInventory().CreateInInventory("RoadFlare");
- itemBs = ItemBase.Cast(itemEnt);
- }
- bool IsInRadialZone(float x, float y, float center_x, float center_y, float radius) {
- // keep distance squared because squaring is cheaper then sqrt
- float distance_squared = Math.Pow(center_x-x, 2) + Math.Pow(center_y-y, 2);
- return (distance_squared < Math.Pow(radius, 2));
- }
- override void OnUpdate(float timeslice)
- {
- UpdateDummyScheduler();
- TickScheduler(timeslice);
- UpdateLogoutPlayers();
- ref array<Man> players = new array<Man>;
- GetGame().GetPlayers( players );
- float safezone_center_x = 11900.4;
- float safezone_center_y = 12508.2;
- float safezone_radius = 250.0;
- for ( int i = 0; i < players.Count(); i++ )
- {
- PlayerBase player;
- Class.CastTo(player, players.Get(i));
- vector pos = player.GetPosition();
- if(IsInRadialZone(pos[0], pos[2], safezone_center_x, safezone_center_y, safezone_radius)) {
- player.SetAllowDamage( false );
- } else { player.SetAllowDamage( true ); }
- }
- }
- };
- Mission CreateCustomMission(string path)
- {
- return new CustomMission();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement