Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
T
the_dungeon_project
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
12
Issues
12
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
Operations
Operations
Incidents
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
genie_logiciel_2015
the_dungeon_project
Commits
9d4f9ffe
Commit
9d4f9ffe
authored
Jan 02, 2016
by
Guillaume Hocquet
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Minimap Display
parent
41dc1eca
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
95 additions
and
5 deletions
+95
-5
src/graphics/guiSkeleton/MainFrame.java
src/graphics/guiSkeleton/MainFrame.java
+5
-0
src/graphics/guiSkeleton/MinimapDisplayer.java
src/graphics/guiSkeleton/MinimapDisplayer.java
+80
-0
src/graphics/guiSkeleton/guiPanel/GamePanel.java
src/graphics/guiSkeleton/guiPanel/GamePanel.java
+9
-4
src/graphics/guiSkeleton/mapManagement/GraphicsMap.java
src/graphics/guiSkeleton/mapManagement/GraphicsMap.java
+1
-1
No files found.
src/graphics/guiSkeleton/MainFrame.java
View file @
9d4f9ffe
...
@@ -44,9 +44,14 @@ public class MainFrame extends JFrame implements FrameAbstraction {
...
@@ -44,9 +44,14 @@ public class MainFrame extends JFrame implements FrameAbstraction {
@Override
@Override
public
void
init
(
FrameKeyListenerAbstraction
keyListenerAbstraction
)
{
public
void
init
(
FrameKeyListenerAbstraction
keyListenerAbstraction
)
{
boolean
fullscreen
=
false
;
this
.
setFocusable
(
true
);
//For the keyListener to work
this
.
setFocusable
(
true
);
//For the keyListener to work
this
.
addKeyListener
((
KeyListener
)
keyListenerAbstraction
);
this
.
addKeyListener
((
KeyListener
)
keyListenerAbstraction
);
this
.
revalidate
();
this
.
revalidate
();
if
(
fullscreen
)
{
this
.
setExtendedState
(
JFrame
.
MAXIMIZED_BOTH
);
this
.
setUndecorated
(
true
);
}
this
.
setVisible
(
true
);
this
.
setVisible
(
true
);
}
}
...
...
src/graphics/guiSkeleton/MinimapDisplayer.java
0 → 100644
View file @
9d4f9ffe
package
graphics.guiSkeleton
;
import
core.gamestate.GameContent
;
import
core.relayer.Relayer
;
import
graphics.guiSkeleton.guiPanel.GamePanel
;
import
graphics.guiSkeleton.mapManagement.GraphicsMap
;
import
graphics.guiSkeleton.mapManagement.MapDrawer
;
import
graphics.guiSkeleton.tileSpriteLinker.TileSprite
;
import
java.awt.*
;
import
java.awt.image.BufferedImage
;
import
java.awt.image.ColorModel
;
import
java.awt.image.WritableRaster
;
/**
* Created by ghocquet on 02/01/16.
*
* Display the minimap
*/
public
class
MinimapDisplayer
{
private
Graphics2D
g_map
;
private
Relayer
relayer
;
private
GamePanel
gamePanel
;
private
BufferedImage
map
;
private
int
mapWidth
;
private
int
mapHeight
;
private
int
tileW
=
TileSprite
.
TileSpriteWidth
();
private
int
tileH
=
TileSprite
.
TileSpriteHeight
();
private
Color
playerColor
=
new
Color
(
255
,
0
,
0
);
private
Color
stairsColor
=
new
Color
(
255
,
255
,
0
);
/**
* @param gameContent: used to get the map generated
* @param followedRelayer: used to get the position of the player
* @param gamePanel: used to get the width of the displayed screen
*/
public
MinimapDisplayer
(
GameContent
gameContent
,
Relayer
followedRelayer
,
GamePanel
gamePanel
)
{
this
.
relayer
=
followedRelayer
;
this
.
gamePanel
=
gamePanel
;
// Compute the Map
GraphicsMap
graphicsMap
=
MapDrawer
.
drawMap
(
gameContent
.
getMap
());
mapWidth
=
graphicsMap
.
getMapPixelWidth
();
mapHeight
=
graphicsMap
.
getMapPixelWidth
();
map
=
new
BufferedImage
((
mapWidth
-
1
)
/
tileW
+
1
,
(
mapHeight
-
1
)
/
tileH
+
1
,
BufferedImage
.
TYPE_INT_ARGB
);
g_map
=
map
.
createGraphics
();
for
(
int
i
=
0
/
tileW
;
i
<=
(
mapWidth
-
1
)
/
tileW
;
i
++)
{
for
(
int
j
=
0
/
tileH
;
j
<=
(
mapHeight
-
1
)
/
tileH
;
j
++)
{
g_map
.
drawImage
(
graphicsMap
.
getSprite
(
i
,
j
),
i
,
j
,
1
,
1
,
null
);
}
}
// Draw the Stairs
core
.
zone
.
Point
out
=
gameContent
.
getMap
().
getPositionStairs
().
getPoint
();
g_map
.
setColor
(
stairsColor
);
g_map
.
drawRect
(
out
.
getPosY
()/
tileW
-
1
,
out
.
getPosX
()/
tileH
-
1
,
3
,
3
);
}
public
void
displayMap
(
Graphics
g
)
{
// Copy the map
ColorModel
cm
=
map
.
getColorModel
();
boolean
isAlphaPremultiplied
=
cm
.
isAlphaPremultiplied
();
WritableRaster
raster
=
map
.
copyData
(
null
);
BufferedImage
newMap
=
new
BufferedImage
(
cm
,
raster
,
isAlphaPremultiplied
,
null
);
// Update the map
Graphics2D
g_newMap
=
newMap
.
createGraphics
();
g_newMap
.
setColor
(
playerColor
);
g_newMap
.
drawRect
(
relayer
.
getCharacter
().
getY
()/
tileW
-
1
,
relayer
.
getCharacter
().
getX
()/
tileH
-
1
,
3
,
3
);
// Draw on the Screen
g
.
drawImage
(
newMap
,
gamePanel
.
getSize
().
width
-
(
mapWidth
-
1
)
/
tileW
,
0
,
null
);
}
}
src/graphics/guiSkeleton/guiPanel/GamePanel.java
View file @
9d4f9ffe
...
@@ -54,6 +54,9 @@ public class GamePanel extends GUIPanel implements GameContentMapChangeListener,
...
@@ -54,6 +54,9 @@ public class GamePanel extends GUIPanel implements GameContentMapChangeListener,
//Avatar of the character
//Avatar of the character
private
AvatarDisplayer
MyAvatarDisplayer
;
private
AvatarDisplayer
MyAvatarDisplayer
;
//Minimap
private
MinimapDisplayer
MyMinimapDisplayer
;
//private boolean spellReleased=true;
//private boolean spellReleased=true;
//private boolean attackReleased=true;
//private boolean attackReleased=true;
...
@@ -98,6 +101,9 @@ public class GamePanel extends GUIPanel implements GameContentMapChangeListener,
...
@@ -98,6 +101,9 @@ public class GamePanel extends GUIPanel implements GameContentMapChangeListener,
topLeftLabel
.
setBackground
(
new
Color
(
0
,
0
,
0
));
topLeftLabel
.
setBackground
(
new
Color
(
0
,
0
,
0
));
this
.
add
(
topLeftLabel
,
BorderLayout
.
NORTH
);
this
.
add
(
topLeftLabel
,
BorderLayout
.
NORTH
);
//Draw the minimap
MyMinimapDisplayer
=
new
MinimapDisplayer
(
gameContent
,
followedRelayer
,
this
);
initialised
=
true
;
initialised
=
true
;
}
}
...
@@ -254,13 +260,12 @@ public class GamePanel extends GUIPanel implements GameContentMapChangeListener,
...
@@ -254,13 +260,12 @@ public class GamePanel extends GUIPanel implements GameContentMapChangeListener,
}
}
}
}
/
/ Spell Display :
/
** Spell Display **/
MySpellDisplayer
=
new
SpellDisplayer
(
g
,
followedEntityPositionGraphicsMapPoint
,
getWidth
(),
getHeight
(),
followedRelayer
.
getCharacter
().
getAbilityList
());
MySpellDisplayer
=
new
SpellDisplayer
(
g
,
followedEntityPositionGraphicsMapPoint
,
getWidth
(),
getHeight
(),
followedRelayer
.
getCharacter
().
getAbilityList
());
MySpellDisplayer
.
displaySpell
();
MySpellDisplayer
.
displaySpell
();
/** Minimap Display **/
//TODO: here we should display the minimap (so entities shouldn't pass on it)
MyMinimapDisplayer
.
displayMap
(
g
);
}
}
}
}
...
...
src/graphics/guiSkeleton/mapManagement/GraphicsMap.java
View file @
9d4f9ffe
...
@@ -14,7 +14,7 @@ import java.awt.image.BufferedImage;
...
@@ -14,7 +14,7 @@ import java.awt.image.BufferedImage;
* - the size of the map (in quarter of tile)
* - the size of the map (in quarter of tile)
*/
*/
public
class
GraphicsMap
{
public
class
GraphicsMap
{
private
final
int
Height
;
private
final
int
Height
;
private
final
int
Width
;
private
final
int
Width
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment