public void HandlePurchaseTintRequest(PurchaseTintRequest request) { Console.WriteLine("PurchaseTintRequest " + JsonConvert.SerializeObject(request)); PurchaseTintResponse response = new PurchaseTintResponse() { Result = PurchaseResult.Success, CurrencyType = request.CurrencyType, CharacterType = request.CharacterType, SkinId = request.SkinId, TextureId = request.TextureId, TintId = request.TintId, ResponseId = request.RequestId }; Send(response); Character.SkinHelper sk = new Character.SkinHelper(); sk.AddSkin(request.CharacterType, request.SkinId, request.TextureId, request.TintId); sk.Save(); }
private static List <PlayerSkinData> GetPlayerSkinDataList(CharacterType characterType) { List <PlayerSkinData> skins = new List <PlayerSkinData>(); SkinHelper hlp = new SkinHelper(); if (hlp.HasSkins(characterType)) { Dictionary <int, Dictionary <int, List <int> > > skindata = hlp.GetSkins(characterType); for (int skinId = 0; skinId < skindata.Count; skinId++) { PlayerSkinData playerSkinData = new PlayerSkinData(); playerSkinData.Unlocked = true; playerSkinData.Patterns = new List <PlayerPatternData>(); Dictionary <int, List <int> > patterndata = null; if (!skindata.TryGetValue(skinId, out patterndata)) { playerSkinData.Patterns.Add(new PlayerPatternData { Unlocked = true, Colors = new List <PlayerColorData> { new PlayerColorData { Unlocked = true } } }); continue; } for (int patternId = 0; patternId < patterndata.Count; patternId++) { PlayerPatternData playerPatternData = new PlayerPatternData(); playerPatternData.Unlocked = true; playerPatternData.Colors = new List <PlayerColorData>(); List <int> colordata = null; if (!patterndata.TryGetValue(patternId, out colordata)) { playerPatternData.Colors.Add(new PlayerColorData { Unlocked = true }); continue; } foreach (int colorID in colordata) { PlayerColorData playerColorData = new PlayerColorData(); playerColorData.Unlocked = true; playerPatternData.Colors.Add(playerColorData); } playerSkinData.Patterns.Add(playerPatternData); } skins.Add(playerSkinData); } } else { for (int i = 0; i < 5; i++) { PlayerSkinData item = new PlayerSkinData() { Unlocked = true, Patterns = new List <PlayerPatternData> { new PlayerPatternData { Colors = new List <PlayerColorData> { new PlayerColorData { Unlocked = true } }, Unlocked = true } } }; skins.Add(item); } } return(skins); }