public float ChangeHealthBy(float a_delta) { a_delta = HandleDamage(a_delta); m_health = Mathf.Clamp(m_health + a_delta, 0f, 100.001f); if (IsDead() && m_respawnTime < 0f) { ExitVehicle(); if (IsSpawned()) { m_char.AssignInput(0f, 0f, false, false); m_char.collider.enabled = false; } DropLootAsContainer(); ResetContainers(); if (null != m_missionMan) { m_missionMan.DeleteMissions(this); } m_condition = 0; AddXp((int)((float)m_xp * 0.05f) * -1); m_gold = (int)((float)m_gold * 0.95f); LidServer.SendMoneyUpdate(this); m_cantLogoutTime = -1f; m_respawnTime = Time.time + 5f; } return(m_health); }
private void UpdateConditions(float a_deltaTime) { bool flag = a_deltaTime > Random.Range(0f, 150f); if (HasCondition(eCondition.bleeding) && flag) { SetCondition(eCondition.bleeding, false); flag = false; } if (HasCondition(eCondition.infection) && flag) { SetCondition(eCondition.infection, false); flag = false; } if (HasCondition(eCondition.pain) && flag) { SetCondition(eCondition.pain, false); flag = false; } SetCondition(eCondition.starvation, m_energy < 0.01f); if (Time.time > m_nextComplexConditionUpdate && m_inventory != null) { Vector3 position = GetPosition(); DatabaseItem itemFromPos = m_inventory.GetItemFromPos(0f, 2f); bool a_state = 0.1f > m_server.GetDayLight() && !Items.IsBody(itemFromPos.type) && !m_server.IsInSpecialArea(position, eAreaType.warm) && !m_buildMan.IsNearCampfire(position); SetCondition(eCondition.freezing, a_state); SetCondition(eCondition.radiation, m_server.IsInSpecialArea(position, eAreaType.radiation)); m_nextComplexConditionUpdate = Time.time + 3f; } if (m_lastCondition != m_condition) { m_lastCondition = m_condition; LidServer.SendConditionUpdate(this); } }
private void Start() { m_missionNpcs = (MissionNpc[])Object.FindObjectsOfType(typeof(MissionNpc)); m_missionObjs = (MissionObjective[])Object.FindObjectsOfType(typeof(MissionObjective)); m_server = (LidServer)Object.FindObjectOfType(typeof(LidServer)); m_missionXpLocMultip = new float[15]; for (int i = 0; i < 15; i++) { m_missionXpLocMultip[i] = 1f; } m_missionXpLocMultip[1] = 0.8f; m_missionXpLocMultip[2] = 1.1f; m_missionXpLocMultip[3] = 1.5f; m_missionXpLocMultip[4] = 0.8f; m_missionXpLocMultip[5] = 1.2f; m_missionXpLocMultip[6] = 0.5f; m_missionXpLocMultip[7] = 0.7f; m_missionXpLocMultip[8] = 1.2f; m_missionXpLocMultip[9] = 1f; m_missionXpLocMultip[10] = 2f; m_missionXpLocMultip[11] = 1.4f; m_missionXpLocMultip[12] = 1.3f; m_missionXpLocMultip[13] = 1.5f; m_missionXpLocMultip[14] = 1.3f; }
public virtual void Init(LidServer a_server, int a_type, int a_ownerPid = 0, int a_health = 100, bool a_isNew = true) { m_isStatic = false; m_server = a_server; m_type = a_type; m_ownerPid = a_ownerPid; m_def = Buildings.GetBuildingDef(m_type); m_decayTime = m_def.decayTime * (double)((float)a_health / 100f); if (!m_def.persistent) { return; } Vector3 position = base.transform.position; float a_x = position.x * 1.00001f; Vector3 position2 = base.transform.position; float a_y = position2.z * 1.00001f; Vector3 eulerAngles = base.transform.rotation.eulerAngles; m_dbBuilding = new DatabaseBuilding(a_type, a_x, a_y, eulerAngles.y * 1.00001f, a_ownerPid, a_health); m_sql = m_server.GetSql(); if (null != m_sql) { if (a_isNew) { m_dbBuilding.flag = eDbAction.insert; m_sql.SaveBuilding(m_dbBuilding); } m_nextSqlUpdateTime = Random.Range(100f, 300f); } }
private void OnDisable() { UIManager.instance.btn_Back.SetActive(false); UIManager.instance.btn_Back.GetComponent <Button>().onClick.RemoveListener(btn_Back_Click); UIManager.instance.btn_StartStopServer.GetComponent <Button>().onClick.RemoveListener(btn_StartStopServer_Click); lidserver = null; }
private void Awake() { m_data.passengerIds = new int[4]; m_vehicle = GetComponent <SimpleVehicle>(); m_server = Object.FindObjectOfType <LidServer>(); m_spawnPoint = (m_lastPos = base.transform.position); KillAndResetPassengers(); }
private void OnDisable() { lidserver.DebugMessage -= OnDebugMessage; lidserver.UnknownMessage -= OnUnknownMessage; lidserver = null; btn_Back.GetComponent <Button>().onClick.RemoveAllListeners(); btn_StartStopServer.GetComponent <Button>().onClick.RemoveAllListeners(); }
private void OnEnable() { lidserver = new LidServer(); lidserver.OnNetworkDebugMessage += OnNetworkDebug; UIManager.instance.btn_StartStopServer.GetComponent <Button>().onClick.AddListener(btn_StartStopServer_Click); UIManager.instance.btn_Back.GetComponent <Button>().onClick.AddListener(btn_Back_Click); UIManager.instance.btn_Back.SetActive(true); }
private void OnEnable() { uimanager = UIManager.GetInstance; btn_Back.GetComponent <Button>().onClick.AddListener(btn_Back_Click); uimanager.ShowOrHideBtnBack(true); lidserver = new LidServer(); lidserver.DebugMessage += OnDebugMessage; lidserver.UnknownMessage += OnUnknownMessage; btn_StartStopServer.GetComponent <Button>().onClick.AddListener(btn_StartStopServer_Click); }
private void Start() { Init(); m_server = (LidServer)Object.FindObjectOfType(typeof(LidServer)); SetStateTolerance(Random.Range(m_stateTolMin, m_stateTolMax)); SetStateDurability(eBrainBaseState.hungry, m_hungerMultip); SetStateDurability(eBrainBaseState.thirsty, m_thirstMultip); SetStateDurability(eBrainBaseState.fatigued, m_fatigueMultip); SetStateDurability(eBrainBaseState.lonely, m_lonelyMultip); SetStateDurability(eBrainBaseState.injured, m_injuryMultip); SetStateDurability(eBrainBaseState.stressed, m_stressMultip); }
public override void Init(LidServer a_server, int a_type, int a_ownerPid = 0, int a_health = 100, bool a_isNew = true) { this.CreateCid(); this.m_sql = a_server.GetSql(); if (null != this.m_sql) { this.m_container = new ItemContainer(4, 4, 6, this.m_cid, this.m_sql, null); this.m_container.m_position = base.transform.position; if (!a_isNew) { this.m_loadItemsFromDb = true; } } base.Init(a_server, a_type, a_ownerPid, a_health, a_isNew); }
public ServerPlayer(string a_name, ulong a_accountId, int a_onlineId, eCharType a_type, NetConnection a_con, SQLThreadManager a_sql, LidServer a_server, BuildingManager a_buildMan, MissionManager a_missionMan) { m_name = a_name; m_accountId = a_accountId; m_onlineId = a_onlineId; m_charType = a_type; m_connection = a_con; if (m_connection != null) { m_connection.Tag = m_onlineId; } m_sql = a_sql; m_server = a_server; m_buildMan = a_buildMan; m_missionMan = a_missionMan; }
private void DropLootAsContainer() { if (m_inventory != null) { for (int i = 0; i < m_inventory.m_items.Count; i++) { LidServer server = m_server; DatabaseItem databaseItem = m_inventory.m_items[i]; int type = databaseItem.type; DatabaseItem databaseItem2 = m_inventory.m_items[i]; server.CreateTempContainerItem(type, databaseItem2.amount, GetPosition()); } m_inventory.m_items.Clear(); m_sql.ClearInventory(m_pid); m_updateContainersFlag = true; m_updateInfoFlag = true; } }
private void Awake() { Application.runInBackground = true; Application.targetFrameRate = 100; Debug.Log(Environment.CommandLine); if (!Application.isEditor) { if (Environment.CommandLine.Contains("-batchmode")) { LidServer lidServer = (LidServer)UnityEngine.Object.FindObjectOfType(typeof(LidServer)); lidServer.enabled = true; lidServer.m_shutdownIfEmpty = Environment.CommandLine.Contains("-killonempty"); } else { LidClient lidClient = (LidClient)UnityEngine.Object.FindObjectOfType(typeof(LidClient)); lidClient.enabled = true; } } Screen.showCursor = true; Cursor.SetCursor(m_cursor, m_cursorOffset, CursorMode.Auto); }
public virtual void Init(LidServer a_server, int a_type, int a_ownerPid = 0, int a_health = 100, bool a_isNew = true) { this.m_isStatic = false; this.m_server = a_server; this.m_type = a_type; this.m_ownerPid = a_ownerPid; this.m_def = Buildings.GetBuildingDef(this.m_type); this.m_decayTime = this.m_def.decayTime * (double)((float)a_health / 100f); if (this.m_def.persistent) { this.m_dbBuilding = new DatabaseBuilding(a_type, base.transform.position.x * 1.00001f, base.transform.position.z * 1.00001f, base.transform.rotation.eulerAngles.y * 1.00001f, a_ownerPid, a_health); this.m_sql = this.m_server.GetSql(); if (null != this.m_sql) { if (a_isNew) { this.m_dbBuilding.flag = eDbAction.insert; this.m_sql.SaveBuilding(this.m_dbBuilding); } this.m_nextSqlUpdateTime = UnityEngine.Random.Range(100f, 300f); } } }
private void Start() { m_server = (LidServer)Object.FindObjectOfType(typeof(LidServer)); }
private void Start() { m_server = Object.FindObjectOfType <LidServer>(); }
private void Start() { m_server = (LidServer)Object.FindObjectOfType(typeof(LidServer)); m_resSpawns = (ResourceSpawner[])Object.FindObjectsOfType(typeof(ResourceSpawner)); m_nextUpdate = Random.Range(3f, 12f); }
public void AddXp(int a_xp) { m_xp = Mathf.Max(m_xp + a_xp, 0); RecalculateRank(); LidServer.SendRankUpdate(this, a_xp); }
private void Start() { Init(); m_server = (LidServer)Object.FindObjectOfType(typeof(LidServer)); m_curPos = m_body.m_homePos; }
private void Start() { Init(); m_handItemDef = Items.GetItemDef(m_handItemType); m_bodyItemDef = Items.GetItemDef(m_bodyItemType); try { m_jobAi = (JobAI)m_job; } catch { } m_agent = GetComponent <NavMeshAgent>(); m_npc = GetComponent <ServerNpc>(); m_server = (LidServer)Object.FindObjectOfType(typeof(LidServer)); if (!(null != m_npc)) { return; } int num = 0; int a_chance = (int)(100f * m_dropMultiplier); if (m_npc.m_npcType == eCharType.eGasmaskGuy) { m_containerType = 120; if (m_handItemType != 0) { m_itemDrops.Add(new DropItem(m_handItemType, m_handItemType, (int)(15f * m_dropMultiplier), 1, 50)); } if (0 < m_handItemDef.ammoItemType) { m_itemDrops.Add(new DropItem(m_handItemDef.ammoItemType, m_handItemDef.ammoItemType, (int)(80f * m_dropMultiplier), 1, 10)); } if (0 < m_bodyItemType) { m_itemDrops.Add(new DropItem(m_bodyItemType, m_bodyItemType, (int)(5f * m_dropMultiplier), 1, 60)); } m_itemDrops.Add(new DropItem(1, 12, 67)); m_itemDrops.Add(new DropItem(15, 19, 67)); m_itemDrops.Add(new DropItem(254, 254, 20, 1, 5)); num = 12; } else if (m_npc.m_npcType == eCharType.eChicken || m_npc.m_npcType == eCharType.eRaven || m_npc.m_npcType == eCharType.eEagle) { m_itemDrops.Add(new DropItem(4, 4, a_chance)); num = 1; } else if (m_npc.m_npcType == eCharType.eBull || m_npc.m_npcType == eCharType.eCow) { m_itemDrops.Add(new DropItem(4, 4, a_chance, 3, 4)); m_itemDrops.Add(new DropItem(133, 133, a_chance, 3, 6)); num = 2; } else if (m_npc.m_npcType == eCharType.eMutant || m_npc.m_npcType == eCharType.eSurvivorMutant) { m_itemDrops.Add(new DropItem(104, 104, 15, 10, 90)); m_itemDrops.Add(new DropItem(254, 254, 15, 1, 3)); num = ((m_npc.m_npcType != eCharType.eMutant) ? 30 : 15); } else if (m_npc.m_npcType == eCharType.eSpider || m_npc.m_npcType == eCharType.eSpiderPoison) { m_itemDrops.Add(new DropItem(254, 254, 10, 1, 3)); num = ((m_npc.m_npcType != eCharType.eSpider) ? 15 : 3); } else { m_itemDrops.Add(new DropItem(4, 4, a_chance, 1, 3)); m_itemDrops.Add(new DropItem(133, 133, a_chance, 1, 3)); num = 1; } if (0 < num) { int randomType = Items.GetRandomType(150f); int a_max = (!Items.HasCondition(randomType)) ? 1 : Random.Range(1, 30); m_itemDrops.Add(new DropItem(randomType, randomType, num, 1, a_max)); } }
private void Start() { Init(); m_handItemDef = Items.GetItemDef(m_handItemType); m_bodyItemDef = Items.GetItemDef(m_bodyItemType); try { m_jobAi = (JobAI)m_job; } catch { } m_agent = GetComponent <NavMeshAgent>(); m_npc = GetComponent <ServerNpc>(); m_server = (LidServer)Object.FindObjectOfType(typeof(LidServer)); if (!(null != m_npc)) { return; } int num = 0; int a_chance = (int)(100f * m_dropMultiplier); if (m_npc.m_npcType == eCharType.eGasmaskGuy) // Type of enemy/mob/npc { m_containerType = 120; // container used for items dropped if (m_handItemType != 0) { m_itemDrops.Add(new DropItem(m_handItemType, m_handItemType, (int)(15f * m_dropMultiplier), 1, 50)); } if (0 < m_handItemDef.ammoItemType) { m_itemDrops.Add(new DropItem(m_handItemDef.ammoItemType, m_handItemDef.ammoItemType, (int)(80f * m_dropMultiplier), 1, 10)); } if (0 < m_bodyItemType) { m_itemDrops.Add(new DropItem(m_bodyItemType, m_bodyItemType, (int)(5f * m_dropMultiplier), 1, 60)); } m_itemDrops.Add(new DropItem(1, 12, 67)); //Items <--- Really stupid setup imo, Should be using strings globally not numbered id's m_itemDrops.Add(new DropItem(15, 19, 67)); m_itemDrops.Add(new DropItem(254, 254, 20, 1, 5)); num = 12; } else if (m_npc.m_npcType == eCharType.eChicken || m_npc.m_npcType == eCharType.eRaven || m_npc.m_npcType == eCharType.eEagle) // else if for other types { m_itemDrops.Add(new DropItem(4, 4, a_chance)); num = 1; } else if (m_npc.m_npcType == eCharType.eBull || m_npc.m_npcType == eCharType.eCow) { m_itemDrops.Add(new DropItem(4, 4, a_chance, 3, 4)); m_itemDrops.Add(new DropItem(133, 133, a_chance, 3, 6)); num = 2; } else if (m_npc.m_npcType == eCharType.eMutant || m_npc.m_npcType == eCharType.eSurvivorMutant) { m_itemDrops.Add(new DropItem(104, 104, 15, 10, 90)); // first id, second id, chance, min_quality, max_quality <--- Really stupid setup imo, Should be using strings globally not numbered id's m_itemDrops.Add(new DropItem(254, 254, 15, 1, 3)); num = ((m_npc.m_npcType != eCharType.eMutant) ? 30 : 15); } else if (m_npc.m_npcType == eCharType.eSpider || m_npc.m_npcType == eCharType.eSpiderPoison) { m_itemDrops.Add(new DropItem(254, 254, 10, 1, 3)); num = ((m_npc.m_npcType != eCharType.eSpider) ? 15 : 3); } else { m_itemDrops.Add(new DropItem(4, 4, a_chance, 1, 3)); m_itemDrops.Add(new DropItem(133, 133, a_chance, 1, 3)); num = 1; } if (0 < num) { int randomType = Items.GetRandomType(150f); int a_max = (!Items.HasCondition(randomType)) ? 1 : Random.Range(1, 30); m_itemDrops.Add(new DropItem(randomType, randomType, num, 1, a_max)); } }
internal static void HandleChatCommand(string text, ServerPlayer player, NetIncomingMessage msg) { var server = (LidServer)UnityEngine.Object.FindObjectOfType(typeof(LidServer)); var building = (LidServer)UnityEngine.Object.FindObjectOfType(typeof(Buildings)); string[] commands = text.Split(' '); switch (commands[0]) { case "/kit-doc1": int IA = player.m_inventory.GetItemAmountByType(254); // Start currency Check if (IA <= 349) // Value to check against. { server.SendMessageToPlayerLocal("Not Enough Gold!", player, msg); // Return error message if plater des not have enough currency! } else if (IA >= 350) // If players currency is higher then the value given here { int num = 350; // Kit Price num = Math.Min(IA, num); // Price math logic player.m_inventory.DeclineItemAmountByType(254, num); // Define item used as currency server.CreateFreeWorldItem(153, 1, player.GetPosition(), 100); // Leather-Vest server.CreateFreeWorldItem(171, 1, player.GetPosition(), 100); // Shoes // Weapons server.CreateFreeWorldItem(93, 1, player.GetPosition(), 100); // Knife server.CreateFreeWorldItem(107, 1, player.GetPosition(), 100); // Torch // Food server.CreateFreeWorldItem(3, 6, player.GetPosition()); // Coocked Potatoes server.CreateFreeWorldItem(8, 1, player.GetPosition()); // Energy Bar server.CreateFreeWorldItem(17, 2, player.GetPosition()); // Water // ITEMS server.CreateFreeWorldItem(140, 3, player.GetPosition()); // Bandages server.CreateFreeWorldItem(141, 1, player.GetPosition()); // Antibiotics server.CreateFreeWorldItem(142, 2, player.GetPosition()); // Painkillers server.CreateFreeWorldItem(143, 1, player.GetPosition()); // Medpack LidServer.SendMoneyUpdate(player); // Request money update from server. server.SendMessageToPlayerLocal("BOUGHT DOCTOR KIT!!!", player, msg); // Return success message!!! } break; case "/kit-scav1": int IA_1 = player.m_inventory.GetItemAmountByType(254); if (IA_1 <= 349) { server.SendMessageToPlayerLocal("Not Enough Gold!", player, msg); } else if (IA_1 >= 350) { int num = 350; num = Math.Min(IA_1, num); player.m_inventory.DeclineItemAmountByType(254, num); // Clothing server.CreateFreeWorldItem(151, 1, player.GetPosition(), 100); // Scrap-Vest server.CreateFreeWorldItem(171, 1, player.GetPosition(), 100); // C_Shoes // Weapons server.CreateFreeWorldItem(111, 1, player.GetPosition(), 100); // Machete server.CreateFreeWorldItem(93, 1, player.GetPosition(), 100); // Knife server.CreateFreeWorldItem(61, 1, player.GetPosition(), 100); // Revolver // AMMO server.CreateFreeWorldItem(40, 20, player.GetPosition(), 100); // 45mm // Food server.CreateFreeWorldItem(4, 2, player.GetPosition()); // Raw Meat server.CreateFreeWorldItem(8, 1, player.GetPosition()); // Energy Bar server.CreateFreeWorldItem(10, 2, player.GetPosition()); // Canned Food server.CreateFreeWorldItem(18, 2, player.GetPosition()); // Beer // ITEMS server.CreateFreeWorldItem(140, 3, player.GetPosition()); // Bandages LidServer.SendMoneyUpdate(player); server.SendMessageToPlayerLocal("BOUGHT SCAV KIT!!!", player, msg); } break; case "/kit-scav2": int IA_2 = player.m_inventory.GetItemAmountByType(254); if (IA_2 <= 349) { server.SendMessageToPlayerLocal("Not Enough Gold!", player, msg); } else if (IA_2 >= 350) { int num = 350; num = Math.Min(IA_2, num); player.m_inventory.DeclineItemAmountByType(254, num); // Clothing server.CreateFreeWorldItem(151, 1, player.GetPosition(), 100); // Scrap-Vest server.CreateFreeWorldItem(171, 1, player.GetPosition(), 100); // C_Shoes // Weapons server.CreateFreeWorldItem(104, 1, player.GetPosition(), 100); // Mutant Claw server.CreateFreeWorldItem(106, 1, player.GetPosition(), 100); // C_Knife server.CreateFreeWorldItem(79, 1, player.GetPosition(), 100); // Bow // AMMO server.CreateFreeWorldItem(50, 35, player.GetPosition(), 100); // Arrows // Food server.CreateFreeWorldItem(4, 2, player.GetPosition()); // Raw Meat server.CreateFreeWorldItem(9, 4, player.GetPosition()); // Mushrooms server.CreateFreeWorldItem(10, 1, player.GetPosition()); // Canned Food server.CreateFreeWorldItem(15, 1, player.GetPosition()); // Rum-Bottle // ITEMS server.CreateFreeWorldItem(140, 2, player.GetPosition()); // Bandages server.CreateFreeWorldItem(140, 1, player.GetPosition()); // Painkillers LidServer.SendMoneyUpdate(player); server.SendMessageToPlayerLocal("BOUGHT SCAV-2 KIT!!!", player, msg); } break; case "/kit-bandit1": int IA_3 = player.m_inventory.GetItemAmountByType(254); if (IA_3 <= 349) { server.SendMessageToPlayerLocal("Not Enough Gold!", player, msg); } else if (IA_3 >= 350) { int num = 350; num = Math.Min(IA_3, num); player.m_inventory.DeclineItemAmountByType(254, num); // Clothing server.CreateFreeWorldItem(152, 1, player.GetPosition(), 100); // Metal-Vest server.CreateFreeWorldItem(170, 1, player.GetPosition(), 100); // Shoes // Weapons server.CreateFreeWorldItem(95, 1, player.GetPosition(), 100); // Mutant Claw server.CreateFreeWorldItem(93, 1, player.GetPosition(), 100); // Knife server.CreateFreeWorldItem(62, 1, player.GetPosition(), 100); // SMG // AMMO server.CreateFreeWorldItem(42, 35, player.GetPosition(), 100); // 556 // Food server.CreateFreeWorldItem(12, 2, player.GetPosition()); // Cooked_fish server.CreateFreeWorldItem(8, 4, player.GetPosition()); // Energy-Bar server.CreateFreeWorldItem(16, 1, player.GetPosition()); // Wine server.CreateFreeWorldItem(15, 1, player.GetPosition()); // Rum-Bottle // ITEMS server.CreateFreeWorldItem(140, 2, player.GetPosition()); // Bandages server.CreateFreeWorldItem(142, 2, player.GetPosition()); // Painkillers LidServer.SendMoneyUpdate(player); server.SendMessageToPlayerLocal("BOUGHT BANDIT KIT!!!", player, msg); } break; case "/kit-guard1": int IA_4 = player.m_inventory.GetItemAmountByType(254); if (IA_4 <= 499) { server.SendMessageToPlayerLocal("Not Enough Gold!", player, msg); } else if (IA_4 >= 500) { int num = 500; num = Math.Min(IA_4, num); player.m_inventory.DeclineItemAmountByType(254, num); // Clothing server.CreateFreeWorldItem(154, 1, player.GetPosition(), 100); // Guardian-Vest server.CreateFreeWorldItem(170, 1, player.GetPosition(), 100); // Shoes // Weapons server.CreateFreeWorldItem(99, 1, player.GetPosition(), 100); // Giant Sword server.CreateFreeWorldItem(93, 1, player.GetPosition(), 100); // Knife server.CreateFreeWorldItem(65, 1, player.GetPosition(), 100); // AK47 // AMMO server.CreateFreeWorldItem(43, 35, player.GetPosition(), 100); // 762 // Food server.CreateFreeWorldItem(12, 2, player.GetPosition()); // Cooked_fish server.CreateFreeWorldItem(8, 4, player.GetPosition()); // Energy-Bar server.CreateFreeWorldItem(16, 1, player.GetPosition()); // Wine // ITEMS server.CreateFreeWorldItem(140, 2, player.GetPosition()); // Bandages server.CreateFreeWorldItem(142, 2, player.GetPosition()); // Painkillers server.CreateFreeWorldItem(143, 1, player.GetPosition()); // Medkit LidServer.SendMoneyUpdate(player); server.SendMessageToPlayerLocal("BOUGHT GUARD-1 KIT!!!", player, msg); } break; case "/kit-guard2": int IA_5 = player.m_inventory.GetItemAmountByType(254); if (IA_5 <= 499) { server.SendMessageToPlayerLocal("Not Enough Gold!", player, msg); } else if (IA_5 >= 500) { int num = 500; num = Math.Min(IA_5, num); player.m_inventory.DeclineItemAmountByType(254, num); // Clothing server.CreateFreeWorldItem(154, 1, player.GetPosition(), 100); // Guardian-Vest server.CreateFreeWorldItem(170, 1, player.GetPosition(), 100); // Shoes // Weapons server.CreateFreeWorldItem(99, 1, player.GetPosition(), 100); // Giant Sword server.CreateFreeWorldItem(93, 1, player.GetPosition(), 100); // Knife server.CreateFreeWorldItem(64, 1, player.GetPosition(), 100); // Sniper // AMMO server.CreateFreeWorldItem(43, 35, player.GetPosition(), 100); // 762 // Food server.CreateFreeWorldItem(12, 2, player.GetPosition()); // Cooked_fish server.CreateFreeWorldItem(8, 4, player.GetPosition()); // Energy-Bar server.CreateFreeWorldItem(16, 1, player.GetPosition()); // Wine // ITEMS server.CreateFreeWorldItem(140, 2, player.GetPosition()); // Bandages server.CreateFreeWorldItem(142, 2, player.GetPosition()); // Painkillers server.CreateFreeWorldItem(143, 1, player.GetPosition()); // Medkit LidServer.SendMoneyUpdate(player); server.SendMessageToPlayerLocal("BOUGHT GUARD-2 KIT!!!", player, msg); } break; case "/kit-guard3": int IA_6 = player.m_inventory.GetItemAmountByType(254); if (IA_6 <= 499) { server.SendMessageToPlayerLocal("Not Enough Gold!", player, msg); } else if (IA_6 >= 500) { int num = 500; num = Math.Min(IA_6, num); player.m_inventory.DeclineItemAmountByType(254, num); // Clothing server.CreateFreeWorldItem(154, 1, player.GetPosition(), 100); // Guardian-Vest server.CreateFreeWorldItem(170, 1, player.GetPosition(), 100); // Shoes // Weapons server.CreateFreeWorldItem(99, 1, player.GetPosition(), 100); // Giant Sword server.CreateFreeWorldItem(93, 1, player.GetPosition(), 100); // Knife server.CreateFreeWorldItem(67, 1, player.GetPosition(), 100); // Auto-SHotgun // AMMO server.CreateFreeWorldItem(44, 35, player.GetPosition(), 100); // Shells // Food server.CreateFreeWorldItem(12, 2, player.GetPosition()); // Cooked_fish server.CreateFreeWorldItem(8, 4, player.GetPosition()); // Energy-Bar server.CreateFreeWorldItem(16, 1, player.GetPosition()); // Wine // ITEMS server.CreateFreeWorldItem(140, 2, player.GetPosition()); // Bandages server.CreateFreeWorldItem(142, 2, player.GetPosition()); // Painkillers server.CreateFreeWorldItem(143, 1, player.GetPosition()); // Medkit LidServer.SendMoneyUpdate(player); server.SendMessageToPlayerLocal("BOUGHT GUARD-3 KIT!!!", player, msg); } break; case "/kit-police": int IA_7 = player.m_inventory.GetItemAmountByType(254); if (IA_7 <= 499) { server.SendMessageToPlayerLocal("Not Enough Gold!", player, msg); } else if (IA_7 >= 499) { int num = 500; num = Math.Min(IA_7, num); player.m_inventory.DeclineItemAmountByType(254, num); server.CreateFreeWorldItem(107, 1, player.GetPosition(), 100); server.CreateFreeWorldItem(120, 1, player.GetPosition()); server.CreateFreeWorldItem(152, 1, player.GetPosition(), 100); server.CreateFreeWorldItem(41, 50, player.GetPosition()); server.CreateFreeWorldItem(60, 1, player.GetPosition(), 100); } break; case "/kit-cult": int IA_8 = player.m_inventory.GetItemAmountByType(254); if (IA_8 <= 499) { server.SendMessageToPlayerLocal("Not Enough Gold!", player, msg); } else if (IA_8 >= 499) { int num = 500; num = Math.Min(IA_8, num); player.m_inventory.DeclineItemAmountByType(254, num); server.CreateFreeWorldItem(121, 3, player.GetPosition()); server.CreateFreeWorldItem(6, 10, player.GetPosition()); server.CreateFreeWorldItem(107, 10, player.GetPosition(), 100); } break; case "/kit-basic": int IA_9 = player.m_inventory.GetItemAmountByType(254); if (IA_9 <= 299) { server.SendMessageToPlayerLocal("Not Enough Gold!", player, msg); } else if (IA_9 >= 299) { int num = 300; num = Math.Min(IA_9, num); player.m_inventory.DeclineItemAmountByType(254, num); server.CreateFreeWorldItem(130, 30, player.GetPosition()); server.CreateFreeWorldItem(107, 1, player.GetPosition(), 100); server.CreateFreeWorldItem(5, 10, player.GetPosition()); server.CreateFreeWorldItem(41, 50, player.GetPosition()); server.CreateFreeWorldItem(60, 1, player.GetPosition(), 100); } break; case "/kit-cultleader": int IA_10 = player.m_inventory.GetItemAmountByType(254); if (IA_10 <= 999) { server.SendMessageToPlayerLocal("Not Enough Gold!", player, msg); } else if (IA_10 >= 999) { int num = 1000; num = Math.Min(IA_10, num); player.m_inventory.DeclineItemAmountByType(254, num); server.CreateFreeWorldItem(132, 20, player.GetPosition()); server.CreateFreeWorldItem(106, 2, player.GetPosition(), 100); server.CreateFreeWorldItem(170, 2, player.GetPosition(), 100); server.CreateFreeWorldItem(120, 2, player.GetPosition()); server.CreateFreeWorldItem(41, 50, player.GetPosition()); server.CreateFreeWorldItem(66, 1, player.GetPosition(), 100); } break; case "/kit-fireblade": int IA_11 = player.m_inventory.GetItemAmountByType(254); if (IA_11 <= 4999) { server.SendMessageToPlayerLocal("Not Enough Gold!", player, msg); } else if (IA_11 >= 4999) { int num = 5000; num = Math.Min(IA_11, num); player.m_inventory.DeclineItemAmountByType(254, num); server.CreateFreeWorldItem(154, 1, player.GetPosition(), 100); server.CreateFreeWorldItem(170, 1, player.GetPosition(), 100); server.CreateFreeWorldItem(43, 50, player.GetPosition()); server.CreateFreeWorldItem(65, 1, player.GetPosition(), 100); server.CreateFreeWorldItem(90, 1, player.GetPosition(), 100); server.CreateFreeWorldItem(131, 20, player.GetPosition()); server.CreateFreeWorldItem(120, 1, player.GetPosition()); } break; case "/players": case "/online": server.SendMessageToPlayerLocal(LNG.Get("CMD_ONLINE_PLAYERS").Replace("{p_online}", server.GetPlayerCount().ToString()), player, msg); break; case "/about": server.SendMessageToPlayerLocal("I.C.E is a project to help expand the Immune-Dedicated software capabilities. For more info please use /commands and /help commandname.", player, msg); break; case "/shout": server.SendNotification(text.Remove(0, 6)); break; case "/commands": server.SendMessageToPlayerLocal("<color=red>COMMANDS</color> <color=green>ARE</color> <color=purple>COLOR</color> <color=purple>CODED</color>! Each command is <color=red>color coded</color> within /help-commandname. Colors represent permission level needed to use them. <color=red>RED COMMANDS ARE ADMIN ONLY!!!</color> <color=yellow>YELLOW COMMANDS REQUIRE GOLD TO EXECUTE!</color> <color=green>GREEN COMMANDS ARE ALL LEVEL ACCESS!</color>", player, msg); break; case "/help": server.SendMessageToPlayerLocal("Avalible commands are: <color=green>/kit-doc</color>, <color=purple>/weapon</color>, <color=purple>/food</color>, <color=purple>/medicine</color> and <color=red>/about</color>", player, msg); break; case "/help-kit": server.SendMessageToPlayerLocal("Usage for /kit-xxx: To purchase a kit you must have the required amount of gold and or permissions. Example: Enter */kit-doc* without the ** to buy a doctors kit for 500gold.", player, msg); break; case "/?": server.SendMessageToPlayerLocal("Com-Mod: <color=purple>Made by</color> <color=green>Va1idUser: Github.com/McSkinnerOG/ImmuneCommandMod</color> and <color=red>Donaut: Github.com/Donaut/ImmuneCommandMod</color>.", player, msg); break; default: break; } switch (commands[1]) { case "kit-doc": server.SendMessageToPlayerLocal("<color=purple>Doctor-kit costs 500gold and recieves: </color> <color=yellow>Leather-Vest x1, Shoes x1, </color> <color=white>Torch x1, Knife x1,</color> <color=brown>Cooked-Potatoes x6, Energy-Bar x1,</color> <color=cyan>Water x2,</color> <color=red>Bandages x3, Anti-Biotics x1 , Painkillers x2, Medpack x1</color>", player, msg); break; case "kit-scav1": server.SendMessageToPlayerLocal("<color=purple>Scavenger-kit 1 costs 500gold and recieves: </color> <color=yellow>Scrap-Vest x1, Shoes x1, </color> <color=white>Machete x1, Knife x1, Revolver x1, 45mm Ammo x20</color> <color=brown> Raw-Meat x 1, Canned-Food x6, Energy-Bar x1,</color> <color=cyan>Beer x2,</color> <color=red>Bandages x3</color>", player, msg); break; case "kit-scav2": server.SendMessageToPlayerLocal("<color=purple>Scavenger-kit 2 costs 500gold and recieves: </color> <color=yellow>Scrap-Vest x1, Sneakers x1, </color> <color=white>Mutant-Claw x1, Crafted-Knife x1, Bow x1, Arrows x32 </color> <color=brown>Cooked-Potatoes x6, Mushrooms x3,</color> <color=cyan>Rum-Bottle x2,</color> <color=red>Bandages x3, Anti-Biotics x1 , Painkillers x2, Medpack x1</color>", player, msg); break; case "kit-bandit": server.SendMessageToPlayerLocal("<color=purple>Bandit-kit costs 500gold and recieves: </color> <color=yellow>Metal-Vest x1, Sneakers x1, </color> <color=white>Katana x1, Knife x1, SMG x1, 9mm Ammo x32 </color> <color=brown>Cooked-Fish x3, Energy-Bar x1,</color> <color=cyan>Rum-Bottle x2, Wine x1, </color> <color=red>Bandages x3, Medpack x1</color>", player, msg); break; case "kit-guard1": server.SendMessageToPlayerLocal("<color=purple>Guardian-kit 1 costs 5000gold and recieves: </color> <color=yellow>Guardian-Vest x1, Sneakers x1, </color> <color=white>Torch x1, Knife x1,</color> <color=brown>Cooked-Potatoes x6, Energy-Bar x1,</color> <color=cyan>Water x2,</color> <color=red>Bandages x3, Anti-Biotics x1 , Painkillers x2, Medpack x1</color>", player, msg); break; case "kit-guard2": server.SendMessageToPlayerLocal("<color=purple>Guardian-kit 2 costs 5000gold and recieves: </color> <color=yellow>Guardian-Vest x1, Sneakers x1, </color> <color=white>Torch x1, Knife x1,</color> <color=brown>Cooked-Potatoes x6, Energy-Bar x1,</color> <color=cyan>Water x2,</color> <color=red>Bandages x3, Anti-Biotics x1 , Painkillers x2, Medpack x1</color>", player, msg); break; case "kit-guard3": server.SendMessageToPlayerLocal("<color=purple>Guardian-kit 3 costs 5000gold and recieves: </color> <color=yellow>Guardian-Vest x1, Sneakers x1, </color> <color=white>Giant-Sword x1, Knife x1, Crowbar x1, AK47 x1, </color> <color=brown>Canned-Food x6, Energy-Bar x1, Soda x1, </color> <color=cyan>Water x2,</color> <color=red>Medpack x1.</color>", player, msg); break; default: break; } }