1 package ru
.deadsoftware
.cavecraft
.misc
;
3 import com
.badlogic
.gdx
.graphics
.OrthographicCamera
;
4 import com
.badlogic
.gdx
.graphics
.g2d
.SpriteBatch
;
5 import com
.badlogic
.gdx
.graphics
.glutils
.ShapeRenderer
;
6 import ru
.deadsoftware
.cavecraft
.GameScreen
;
7 import ru
.deadsoftware
.cavecraft
.misc
.Assets
;
9 public abstract class Renderer
{
11 public OrthographicCamera camera
;
12 public ShapeRenderer shapeRenderer
;
13 public SpriteBatch spriteBatch
;
16 this(GameScreen
.getWidth(), GameScreen
.getHeight());
19 public Renderer(float width
, float height
) {
20 camera
= new OrthographicCamera();
21 camera
.setToOrtho(true, width
, height
);
22 shapeRenderer
= new ShapeRenderer();
23 shapeRenderer
.setProjectionMatrix(camera
.combined
);
24 spriteBatch
= new SpriteBatch();
25 spriteBatch
.setProjectionMatrix(camera
.combined
);
28 public float getWidth() {
29 return camera
.viewportWidth
;
32 public float getHeight() {return camera
.viewportHeight
;}
34 public void setFontScale(float scale
) {
35 Assets
.minecraftFont
.getData().setScale(scale
);
38 public void setFontColor(int r
, int g
, int b
) {
39 Assets
.minecraftFont
.setColor(r
/255f, g
/255f, b
/255f, 1f);
42 public void drawString(String str
, float x
, float y
) {
43 Assets
.minecraftFont
.draw(spriteBatch
, str
, x
, y
);
46 public void drawString(String str
) {
47 Assets
.minecraftFont
.draw(spriteBatch
, str
,
48 getWidth()/2 - Assets
.getStringWidth(str
)/2,
49 getHeight()/2 - Assets
.getStringHeight(str
)/2);
52 public abstract void render();