private static void HandleReward(GameSession session, PacketReader packet) { int rank = packet.ReadInt(); if (session.Player.PrestigeRewardsClaimed.Contains(rank)) { return; } // Get reward data PrestigeReward reward = PrestigeMetadataStorage.GetReward(rank); switch (reward.Type) { case "item": Item item = new(reward.Id) { Rarity = 4 }; session.Player.Inventory.AddItem(session, item, true); break; case "statPoint": session.Player.AddStatPoint(reward.Value, OtherStatsIndex.Trophy); break; } session.Send(PrestigePacket.Reward(rank)); session.Player.PrestigeRewardsClaimed.Add(rank); }
private static void HandleReward(GameSession session, PacketReader packet) { int rank = packet.ReadInt(); session.Send(PrestigePacket.Reward(rank)); // Get reward data PrestigeReward reward = PrestigeMetadataStorage.GetReward(rank); if (reward.Type.Equals("item")) { Item item = new Item(reward.Id) { CreationTime = DateTimeOffset.UtcNow.ToUnixTimeSeconds(), Rarity = 4 }; InventoryController.Add(session, item, true); } else if (reward.Type.Equals("statPoint")) { session.Player.StatPointDistribution.AddTotalStatPoints(reward.Value); } session.Player.PrestigeRewardsClaimed.Add(rank); }
private static void HandleReward(GameSession session, PacketReader packet) { int rank = packet.ReadInt(); if (session.Player.PrestigeRewardsClaimed.Contains(rank)) { return; } // Get reward data PrestigeReward reward = PrestigeMetadataStorage.GetReward(rank); if (reward.Type.Equals("item")) { Item item = new(reward.Id) { CreationTime = TimeInfo.Now(), Rarity = 4 }; session.Player.Inventory.AddItem(session, item, true); } else if (reward.Type.Equals("statPoint")) { session.Player.StatPointDistribution.AddTotalStatPoints(reward.Value); } session.Send(PrestigePacket.Reward(rank)); session.Player.PrestigeRewardsClaimed.Add(rank); }