mirror of
https://github.com/ClassiCube/ClassiCube.git
synced 2025-09-14 01:55:19 -04:00
Mobs can use custom textures.
This commit is contained in:
parent
a223762e02
commit
eb3211101d
@ -110,8 +110,8 @@ namespace ClassicalSharp {
|
||||
Window.AsyncDownloader.TryGetItem( "skin_" + SkinName, out item );
|
||||
if( item != null && item.Bmp != null ) {
|
||||
Bitmap bmp = item.Bmp;
|
||||
Window.Graphics.DeleteTexture( ref renderer.TextureId );
|
||||
renderer.TextureId = Window.Graphics.LoadTexture( bmp );
|
||||
Window.Graphics.DeleteTexture( ref renderer.PlayerTextureId );
|
||||
renderer.PlayerTextureId = Window.Graphics.LoadTexture( bmp );
|
||||
SkinType = Utils.GetSkinType( bmp );
|
||||
bmp.Dispose();
|
||||
}
|
||||
|
@ -22,7 +22,7 @@ namespace ClassicalSharp.Model {
|
||||
Set.RightWing = MakeWing( 0.1875f, 0.25f );
|
||||
vertices = null;
|
||||
|
||||
DefaultSkinTextureId = graphics.LoadTexture( "chicken.png" );
|
||||
DefaultTexId = graphics.LoadTexture( "chicken.png" );
|
||||
}
|
||||
|
||||
ModelPart MakeHead() {
|
||||
@ -59,7 +59,7 @@ namespace ClassicalSharp.Model {
|
||||
|
||||
protected override void DrawPlayerModel( Player player, PlayerRenderer renderer ) {
|
||||
graphics.Texturing = true;
|
||||
int texId = DefaultSkinTextureId;
|
||||
int texId = renderer.MobTextureId <= 0 ? DefaultTexId : renderer.MobTextureId;
|
||||
graphics.Bind2DTexture( texId );
|
||||
graphics.AlphaTest = true;
|
||||
|
||||
@ -75,7 +75,7 @@ namespace ClassicalSharp.Model {
|
||||
|
||||
public override void Dispose() {
|
||||
Set.Dispose();
|
||||
graphics.DeleteTexture( ref DefaultSkinTextureId );
|
||||
graphics.DeleteTexture( ref DefaultTexId );
|
||||
}
|
||||
|
||||
class ModelSet {
|
||||
|
@ -20,7 +20,7 @@ namespace ClassicalSharp.Model {
|
||||
Set.RightLegBack = MakeLeg( 0, 0.25f, 0.125f, 0.375f );
|
||||
vertices = null;
|
||||
|
||||
DefaultSkinTextureId = graphics.LoadTexture( "creeper.png" );
|
||||
DefaultTexId = graphics.LoadTexture( "creeper.png" );
|
||||
}
|
||||
|
||||
ModelPart MakeHead() {
|
||||
@ -41,7 +41,7 @@ namespace ClassicalSharp.Model {
|
||||
|
||||
protected override void DrawPlayerModel( Player player, PlayerRenderer renderer ) {
|
||||
graphics.Texturing = true;
|
||||
int texId = DefaultSkinTextureId;
|
||||
int texId = renderer.MobTextureId <= 0 ? DefaultTexId : renderer.MobTextureId;
|
||||
graphics.Bind2DTexture( texId );
|
||||
|
||||
DrawRotate( 0, 1.125f, 0, -pitch, 0, 0, Set.Head );
|
||||
@ -55,7 +55,7 @@ namespace ClassicalSharp.Model {
|
||||
|
||||
public override void Dispose() {
|
||||
Set.Dispose();
|
||||
graphics.DeleteTexture( ref DefaultSkinTextureId );
|
||||
graphics.DeleteTexture( ref DefaultTexId );
|
||||
}
|
||||
|
||||
class ModelSet {
|
||||
|
@ -44,7 +44,7 @@ namespace ClassicalSharp.Model {
|
||||
|
||||
public abstract void Dispose();
|
||||
|
||||
public int DefaultSkinTextureId; //{ get; protected set; }
|
||||
public int DefaultTexId; //{ get; protected set; }
|
||||
|
||||
protected FastColour col = new FastColour( 178, 178, 178 );
|
||||
protected VertexPos3fTex2fCol4b[] vertices;
|
||||
|
@ -20,7 +20,7 @@ namespace ClassicalSharp.Model {
|
||||
Set.RightLegBack = MakeLeg( 0.0625f, 0.3125f, 0.3125f, 0.5625f );
|
||||
vertices = null;
|
||||
|
||||
DefaultSkinTextureId = graphics.LoadTexture( "pig.png" );
|
||||
DefaultTexId = graphics.LoadTexture( "pig.png" );
|
||||
}
|
||||
|
||||
ModelPart MakeHead() {
|
||||
@ -41,7 +41,7 @@ namespace ClassicalSharp.Model {
|
||||
|
||||
protected override void DrawPlayerModel( Player player, PlayerRenderer renderer ) {
|
||||
graphics.Texturing = true;
|
||||
int texId = DefaultSkinTextureId;
|
||||
int texId = renderer.MobTextureId <= 0 ? DefaultTexId : renderer.MobTextureId;
|
||||
graphics.Bind2DTexture( texId );
|
||||
|
||||
DrawRotate( 0, 0.75f, -0.375f, -pitch, 0, 0, Set.Head );
|
||||
@ -55,7 +55,7 @@ namespace ClassicalSharp.Model {
|
||||
|
||||
public override void Dispose() {
|
||||
Set.Dispose();
|
||||
graphics.DeleteTexture( ref DefaultSkinTextureId );
|
||||
graphics.DeleteTexture( ref DefaultTexId );
|
||||
}
|
||||
|
||||
class ModelSet {
|
||||
|
@ -41,7 +41,7 @@ namespace ClassicalSharp.Model {
|
||||
|
||||
using( Bitmap bmp = new Bitmap( "char.png" ) ) {
|
||||
window.DefaultPlayerSkinType = Utils.GetSkinType( bmp );
|
||||
DefaultSkinTextureId = graphics.LoadTexture( bmp );
|
||||
DefaultTexId = graphics.LoadTexture( bmp );
|
||||
}
|
||||
}
|
||||
|
||||
@ -80,7 +80,7 @@ namespace ClassicalSharp.Model {
|
||||
ModelSet model;
|
||||
protected override void DrawPlayerModel( Player player, PlayerRenderer renderer ) {
|
||||
graphics.Texturing = true;
|
||||
int texId = renderer.TextureId <= 0 ? DefaultSkinTextureId : renderer.TextureId;
|
||||
int texId = renderer.PlayerTextureId <= 0 ? DefaultTexId : renderer.PlayerTextureId;
|
||||
graphics.Bind2DTexture( texId );
|
||||
model = Set64x32;
|
||||
SkinType skinType = player.SkinType;
|
||||
@ -101,7 +101,7 @@ namespace ClassicalSharp.Model {
|
||||
Set64x32.Dispose();
|
||||
Set64x64.Dispose();
|
||||
Set64x64Slim.Dispose();
|
||||
graphics.DeleteTexture( ref DefaultSkinTextureId );
|
||||
graphics.DeleteTexture( ref DefaultTexId );
|
||||
}
|
||||
|
||||
class ModelSet {
|
||||
|
@ -31,7 +31,7 @@ namespace ClassicalSharp.Model {
|
||||
}
|
||||
vertices = null;
|
||||
|
||||
DefaultSkinTextureId = graphics.LoadTexture( "sheep.png" );
|
||||
DefaultTexId = graphics.LoadTexture( "sheep.png" );
|
||||
furTextureId = graphics.LoadTexture( "sheep_fur.png" );
|
||||
}
|
||||
|
||||
@ -65,7 +65,7 @@ namespace ClassicalSharp.Model {
|
||||
|
||||
protected override void DrawPlayerModel( Player player, PlayerRenderer renderer ) {
|
||||
graphics.Texturing = true;
|
||||
int texId = DefaultSkinTextureId;
|
||||
int texId = renderer.MobTextureId <= 0 ? DefaultTexId : renderer.MobTextureId;
|
||||
graphics.Bind2DTexture( texId );
|
||||
|
||||
DrawRotate( 0, 1.125f, -0.5f, -pitch, 0, 0, Set.Head );
|
||||
@ -88,7 +88,7 @@ namespace ClassicalSharp.Model {
|
||||
|
||||
public override void Dispose() {
|
||||
Set.Dispose();
|
||||
graphics.DeleteTexture( ref DefaultSkinTextureId );
|
||||
graphics.DeleteTexture( ref DefaultTexId );
|
||||
if( Fur ) {
|
||||
graphics.DeleteTexture( ref furTextureId );
|
||||
}
|
||||
|
@ -20,7 +20,7 @@ namespace ClassicalSharp.Model {
|
||||
Set.RightArm = MakeRightArm( 0.25f, 0.375f );
|
||||
vertices = null;
|
||||
|
||||
DefaultSkinTextureId = graphics.LoadTexture( "skeleton.png" );
|
||||
DefaultTexId = graphics.LoadTexture( "skeleton.png" );
|
||||
}
|
||||
|
||||
ModelPart MakeLeftArm( float x1, float x2 ) {
|
||||
@ -54,7 +54,7 @@ namespace ClassicalSharp.Model {
|
||||
protected override void DrawPlayerModel( Player player, PlayerRenderer renderer ) {
|
||||
graphics.Texturing = true;
|
||||
graphics.AlphaTest = true;
|
||||
int texId = DefaultSkinTextureId;
|
||||
int texId = renderer.MobTextureId <= 0 ? DefaultTexId : renderer.MobTextureId;
|
||||
graphics.Bind2DTexture( texId );
|
||||
|
||||
DrawRotate( 0, 1.5f, 0, -pitch, 0, 0, Set.Head );
|
||||
@ -67,7 +67,7 @@ namespace ClassicalSharp.Model {
|
||||
|
||||
public override void Dispose() {
|
||||
Set.Dispose();
|
||||
graphics.DeleteTexture( ref DefaultSkinTextureId );
|
||||
graphics.DeleteTexture( ref DefaultTexId );
|
||||
}
|
||||
|
||||
class ModelSet {
|
||||
|
@ -19,7 +19,7 @@ namespace ClassicalSharp.Model {
|
||||
Set.RightLeg = MakeLeg( 0.1875f, 1.1875f );
|
||||
vertices = null;
|
||||
|
||||
DefaultSkinTextureId = graphics.LoadTexture( "spider.png" );
|
||||
DefaultTexId = graphics.LoadTexture( "spider.png" );
|
||||
}
|
||||
|
||||
ModelPart MakeHead() {
|
||||
@ -44,7 +44,7 @@ namespace ClassicalSharp.Model {
|
||||
|
||||
protected override void DrawPlayerModel( Player player, PlayerRenderer renderer ) {
|
||||
graphics.Texturing = true;
|
||||
int texId = DefaultSkinTextureId;
|
||||
int texId = renderer.MobTextureId <= 0 ? DefaultTexId : renderer.MobTextureId;
|
||||
graphics.Bind2DTexture( texId );
|
||||
graphics.AlphaTest = true;
|
||||
|
||||
@ -63,7 +63,7 @@ namespace ClassicalSharp.Model {
|
||||
|
||||
public override void Dispose() {
|
||||
Set.Dispose();
|
||||
graphics.DeleteTexture( ref DefaultSkinTextureId );
|
||||
graphics.DeleteTexture( ref DefaultTexId );
|
||||
}
|
||||
|
||||
class ModelSet {
|
||||
|
@ -20,7 +20,7 @@ namespace ClassicalSharp.Model {
|
||||
Set.RightArm = MakeRightArm( 0.25f, 0.5f );
|
||||
vertices = null;
|
||||
|
||||
DefaultSkinTextureId = graphics.LoadTexture( "zombie.png" );
|
||||
DefaultTexId = graphics.LoadTexture( "zombie.png" );
|
||||
}
|
||||
|
||||
ModelPart MakeLeftArm( float x1, float x2 ) {
|
||||
@ -53,7 +53,7 @@ namespace ClassicalSharp.Model {
|
||||
|
||||
protected override void DrawPlayerModel( Player player, PlayerRenderer renderer ) {
|
||||
graphics.Texturing = true;
|
||||
int texId = DefaultSkinTextureId;
|
||||
int texId = renderer.MobTextureId <= 0 ? DefaultTexId : renderer.MobTextureId;
|
||||
graphics.Bind2DTexture( texId );
|
||||
|
||||
DrawRotate( 0, 1.5f, 0, -pitch, 0, 0, Set.Head );
|
||||
@ -67,7 +67,7 @@ namespace ClassicalSharp.Model {
|
||||
|
||||
public override void Dispose() {
|
||||
Set.Dispose();
|
||||
graphics.DeleteTexture( ref DefaultSkinTextureId );
|
||||
graphics.DeleteTexture( ref DefaultTexId );
|
||||
}
|
||||
|
||||
class ModelSet {
|
||||
|
@ -14,7 +14,7 @@ namespace ClassicalSharp.Renderers {
|
||||
public Player Player;
|
||||
Texture nameTexture;
|
||||
float nameWidth, nameHeight;
|
||||
public int TextureId = -1;
|
||||
public int PlayerTextureId = -1, MobTextureId = -1;
|
||||
int nameTextureId = -1;
|
||||
|
||||
public PlayerRenderer( Player player, Game window ) {
|
||||
@ -33,7 +33,7 @@ namespace ClassicalSharp.Renderers {
|
||||
}
|
||||
|
||||
public void Dispose() {
|
||||
Graphics.DeleteTexture( ref TextureId );
|
||||
Graphics.DeleteTexture( ref PlayerTextureId );
|
||||
Graphics.DeleteTexture( ref nameTextureId );
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user