Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private static final SpritePixels createSpritePixels(NpcProvider npcProvider, ModelProvider modelProvider, SpriteProvider spriteProvider, TextureProvider textureProvider, int npcId) throws IOException {
- NpcDefinition npc = npcProvider.provide(npcId);
- RSTextureProvider rsTextureProvider = new RSTextureProvider(textureProvider, spriteProvider);
- SpritePixels spritePixels = new SpritePixels(250, 250);
- Graphics3D graphics = new Graphics3D(rsTextureProvider);
- graphics.setBrightness(0.6d);
- graphics.setRasterBuffer(spritePixels.pixels, 250, 250);
- graphics.reset();
- graphics.setRasterClipping();
- graphics.setOffset(125, 125);
- graphics.rasterGouraudLowRes = false;
- double zoom = (1040 * Math.log(npc.tileSpacesOccupied)) + 1040;
- int zoom2d = (int) zoom;
- int var17 = zoom2d * Graphics3D.SINE[200] >> 16;
- int var18 = zoom2d * Graphics3D.COSINE[200] >> 16;
- for (int j = npc.models.length - 1; j >= 0; --j) {
- ModelDefinition stanceModel = modelProvider.provide(npc.models[j]);
- if (npc.recolorToFind != null) {
- for (int i = 0; i < npc.recolorToFind.length; ++i) {
- stanceModel.recolor(npc.recolorToFind[i], npc.recolorToReplace[i]);
- }
- }
- if (npc.retextureToFind != null) {
- for (int i = 0; i < npc.retextureToFind.length; ++i) {
- stanceModel.retexture(npc.retextureToFind[i], npc.retextureToReplace[i]);
- }
- }
- Model npcModel = Model.light(stanceModel, npc.ambient + 64, npc.contrast * 5 + 850, -30, -50, -30);
- if (npcModel == null) {
- return null;
- }
- npcModel.calculateBoundsCylinder();
- //npcModel.rotateAndProject(graphics, 0, 200, 0, 200, 0, npcModel.modelHeight / 2 + var17, var18);
- npcModel.rotateAndProject(graphics, 0, 200, 0, 200, 0, var17, var18);
- }
- spritePixels.drawShadow(3153952);
- graphics.setRasterBuffer(spritePixels.pixels, 250, 250);
- graphics.setRasterBuffer(graphics.graphicsPixels, graphics.graphicsPixelsWidth, graphics.graphicsPixelsHeight);
- graphics.setRasterClipping();
- graphics.rasterGouraudLowRes = true;
- return spritePixels;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement