public void Dispose() { if (character != null) { character.Dispose(); character = null; } }
public void SetCharacter(Character.Data Char) { character = Char; Character.Appearance appearance = NAPI.Util.FromJson <Character.Appearance>(character.data.appearance); foreach (var face in appearance.facefeature) { NAPI.Player.SetPlayerFaceFeature(client, face.faceIndex, face.faceScale); } Dictionary <int, ComponentVariation> clothes = new Dictionary <int, ComponentVariation>(); foreach (var component in appearance.components) { clothes.Add(component.componentId, new ComponentVariation { Drawable = component.drawableId, Texture = component.textureId }); } NAPI.Player.SetPlayerClothes(client, clothes); if (appearance.headoverlay != null) { foreach (var headoverlay in appearance.headoverlay) { NAPI.Player.SetPlayerHeadOverlay(client, headoverlay.overlayId, new HeadOverlay { Index = (byte)headoverlay.index, Color = (byte)headoverlay.firstColor, Opacity = (byte)headoverlay.opacity }); } } HeadBlend genetic = new HeadBlend { ShapeFirst = (byte)appearance.genID, ShapeSecond = (byte)appearance.genID, SkinFirst = (byte)appearance.genID, SkinSecond = (byte)appearance.genID }; NAPI.Player.SetPlayerHeadBlend(client, genetic); //character.Spawn(); }