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