Skip to content

Commit f355f43

Browse files
committed
overlay
1 parent f4e1807 commit f355f43

2 files changed

Lines changed: 140 additions & 0 deletions

File tree

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
package client.scene.screen;
2+
3+
import client.app.GameClient;
4+
import engine.components.AbstractComponent;
5+
import engine.runtime.input.Input;
6+
import engine.runtime.input.Key;
7+
8+
public class OverlayTestComponent extends AbstractComponent {
9+
10+
private Input input;
11+
private GameClient client;
12+
13+
public OverlayTestComponent(Input input, GameClient client) {
14+
this.input = input;
15+
this.client = client;
16+
}
17+
18+
@Override
19+
public void onUpdate(float tpf) {
20+
if (getOwner().getScene().getTopScreen() instanceof OverlayTestScreen) {
21+
return;
22+
}
23+
24+
if (input.wasKeyPressed(Key.O)) {
25+
getOwner().getScene().pushScreen(new OverlayTestScreen(client));
26+
}
27+
}
28+
}
Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,112 @@
1+
package client.scene.screen;
2+
3+
import client.app.GameClient;
4+
import client.ui.cursor.SimpleCursorComponent;
5+
import engine.components.AbstractComponent;
6+
import engine.components.RenderableComponent;
7+
import engine.rendering.Graphics;
8+
import engine.runtime.input.KeyEvent;
9+
import engine.runtime.input.MouseEvent;
10+
import engine.scene.SceneNode;
11+
import engine.scene.screen.GameScreen;
12+
import engine.scene.screen.GlobalInput;
13+
import math.Color;
14+
15+
public class OverlayTestScreen extends GameScreen {
16+
17+
private boolean justOpened;
18+
private GameClient client;
19+
private SimpleCursorComponent component;
20+
private SceneNode cursor;
21+
22+
public OverlayTestScreen(GameClient client) {
23+
this.client = client;
24+
25+
OverlayComponent component = new OverlayComponent();
26+
SceneNode node = new SceneNode();
27+
node.addComponent(component);
28+
uiRoot.addChild(node);
29+
30+
SimpleCursorComponent component2 = new SimpleCursorComponent(GlobalInput.input);
31+
cursor = new SceneNode("Cursor", component2);
32+
uiRoot.addChild(cursor);
33+
}
34+
35+
@Override
36+
public void onEnter() {
37+
justOpened = true;
38+
}
39+
40+
@Override
41+
public void onExit() {}
42+
43+
@Override
44+
public void update(float tpf) {}
45+
46+
@Override
47+
public boolean capturesMouse() {
48+
return false;
49+
}
50+
51+
@Override
52+
public boolean isTransparent() {
53+
return true;
54+
}
55+
56+
@Override
57+
public boolean blocksGameplay() {
58+
return true;
59+
}
60+
61+
@Override
62+
public boolean onMouseClicked(MouseEvent e) {
63+
return true;
64+
}
65+
66+
@Override
67+
public boolean onMousePressed(MouseEvent e) {
68+
return true;
69+
}
70+
71+
@Override
72+
public boolean onMouseMoved(MouseEvent e) {
73+
return true;
74+
}
75+
76+
@Override
77+
public boolean onMouseDragged(MouseEvent e) {
78+
return true;
79+
}
80+
81+
@Override
82+
public boolean onMouseReleased(MouseEvent e) {
83+
return true;
84+
}
85+
86+
@Override
87+
public boolean onKeyPressed(KeyEvent e) {
88+
return true;
89+
}
90+
91+
@Override
92+
public boolean onKeyReleased(KeyEvent e) {
93+
return true;
94+
}
95+
96+
@Override
97+
public boolean onKeyTyped(KeyEvent e) {
98+
return true;
99+
}
100+
101+
public class OverlayComponent extends AbstractComponent implements RenderableComponent {
102+
103+
@Override
104+
public void render(Graphics g) {
105+
g.setColor(new Color(0, 0, 0, 0.4f));
106+
g.fillRect(0, 0, g.getWidth(), g.getHeight());
107+
}
108+
109+
@Override
110+
public void update(float tpf) {}
111+
}
112+
}

0 commit comments

Comments
 (0)