Improve /f map by increasing the width and making the height much larger in case its a single view.
This commit is contained in:
parent
e3785a1790
commit
2a827a28b1
@ -16,8 +16,10 @@ public class Const
|
|||||||
public static final String ASPECT = BASENAME;
|
public static final String ASPECT = BASENAME;
|
||||||
|
|
||||||
// ASCII Map
|
// ASCII Map
|
||||||
|
public static final int MAP_WIDTH = 47;
|
||||||
public static final int MAP_HEIGHT = 8;
|
public static final int MAP_HEIGHT = 8;
|
||||||
public static final int MAP_WIDTH = 39;
|
public static final int MAP_HEIGHT_FULL = 17;
|
||||||
|
|
||||||
public static final char[] MAP_KEY_CHARS = "\\/#?$%=&^ABCDEFGHJKLMNOPQRSTUVWXYZ1234567890abcdeghjmnopqrsuvwxyz".toCharArray();
|
public static final char[] MAP_KEY_CHARS = "\\/#?$%=&^ABCDEFGHJKLMNOPQRSTUVWXYZ1234567890abcdeghjmnopqrsuvwxyz".toCharArray();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,8 @@
|
|||||||
package com.massivecraft.factions.cmd;
|
package com.massivecraft.factions.cmd;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.massivecraft.factions.Const;
|
||||||
import com.massivecraft.factions.Perm;
|
import com.massivecraft.factions.Perm;
|
||||||
import com.massivecraft.factions.entity.BoardColl;
|
import com.massivecraft.factions.entity.BoardColl;
|
||||||
import com.massivecraft.massivecore.cmd.arg.ARBoolean;
|
import com.massivecraft.massivecore.cmd.arg.ARBoolean;
|
||||||
@ -35,14 +38,14 @@ public class CmdFactionsMap extends FactionsCommand
|
|||||||
{
|
{
|
||||||
if ( ! this.argIsSet(0))
|
if ( ! this.argIsSet(0))
|
||||||
{
|
{
|
||||||
showMap();
|
showMap(Const.MAP_WIDTH, Const.MAP_HEIGHT_FULL);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.arg(0, ARBoolean.get(), !msender.isMapAutoUpdating()))
|
if (this.arg(0, ARBoolean.get(), !msender.isMapAutoUpdating()))
|
||||||
{
|
{
|
||||||
// And show the map once
|
// And show the map once
|
||||||
showMap();
|
showMap(Const.MAP_WIDTH, Const.MAP_HEIGHT);
|
||||||
|
|
||||||
// Turn on
|
// Turn on
|
||||||
msender.setMapAutoUpdating(true);
|
msender.setMapAutoUpdating(true);
|
||||||
@ -56,9 +59,10 @@ public class CmdFactionsMap extends FactionsCommand
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void showMap()
|
public void showMap(int width, int height)
|
||||||
{
|
{
|
||||||
sendMessage(BoardColl.get().getMap(msenderFaction, PS.valueOf(me), me.getLocation().getYaw()));
|
List<String> message = BoardColl.get().getMap(msenderFaction, PS.valueOf(me), me.getLocation().getYaw(), width, height);
|
||||||
|
sendMessage(message);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -60,6 +60,7 @@ import org.bukkit.event.player.PlayerRespawnEvent;
|
|||||||
import org.bukkit.plugin.Plugin;
|
import org.bukkit.plugin.Plugin;
|
||||||
import org.bukkit.projectiles.ProjectileSource;
|
import org.bukkit.projectiles.ProjectileSource;
|
||||||
|
|
||||||
|
import com.massivecraft.factions.Const;
|
||||||
import com.massivecraft.factions.Factions;
|
import com.massivecraft.factions.Factions;
|
||||||
import com.massivecraft.factions.Rel;
|
import com.massivecraft.factions.Rel;
|
||||||
import com.massivecraft.factions.TerritoryAccess;
|
import com.massivecraft.factions.TerritoryAccess;
|
||||||
@ -425,7 +426,8 @@ public class EngineMain extends EngineAbstract
|
|||||||
// send host faction info updates
|
// send host faction info updates
|
||||||
if (mplayer.isMapAutoUpdating())
|
if (mplayer.isMapAutoUpdating())
|
||||||
{
|
{
|
||||||
mplayer.sendMessage(BoardColl.get().getMap(mplayer, chunkTo, player.getLocation().getYaw()));
|
List<String> message = BoardColl.get().getMap(mplayer, chunkTo, player.getLocation().getYaw(), Const.MAP_WIDTH, Const.MAP_HEIGHT);
|
||||||
|
mplayer.sendMessage(message);
|
||||||
}
|
}
|
||||||
else if (factionFrom != factionTo)
|
else if (factionFrom != factionTo)
|
||||||
{
|
{
|
||||||
|
@ -289,7 +289,7 @@ public class Board extends Entity<Board> implements BoardInterface
|
|||||||
// MAP GENERATION
|
// MAP GENERATION
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ArrayList<String> getMap(RelationParticipator observer, PS centerPs, double inDegrees)
|
public ArrayList<String> getMap(RelationParticipator observer, PS centerPs, double inDegrees, int width, int height)
|
||||||
{
|
{
|
||||||
centerPs = centerPs.getChunkCoords(true);
|
centerPs = centerPs.getChunkCoords(true);
|
||||||
|
|
||||||
@ -298,14 +298,13 @@ public class Board extends Entity<Board> implements BoardInterface
|
|||||||
|
|
||||||
ret.add(Txt.titleize("("+centerPs.getChunkX() + "," + centerPs.getChunkZ()+") "+centerFaction.getName(observer)));
|
ret.add(Txt.titleize("("+centerPs.getChunkX() + "," + centerPs.getChunkZ()+") "+centerFaction.getName(observer)));
|
||||||
|
|
||||||
int halfWidth = Const.MAP_WIDTH / 2;
|
int halfWidth = width / 2;
|
||||||
int halfHeight = Const.MAP_HEIGHT / 2;
|
int halfHeight = height / 2;
|
||||||
|
width = halfWidth * 2 + 1;
|
||||||
|
height = halfHeight * 2 + 1;
|
||||||
|
|
||||||
PS topLeftPs = centerPs.plusChunkCoords(-halfWidth, -halfHeight);
|
PS topLeftPs = centerPs.plusChunkCoords(-halfWidth, -halfHeight);
|
||||||
|
|
||||||
int width = halfWidth * 2 + 1;
|
|
||||||
int height = halfHeight * 2 + 1;
|
|
||||||
|
|
||||||
// Make room for the list of names
|
// Make room for the list of names
|
||||||
height--;
|
height--;
|
||||||
|
|
||||||
|
@ -184,12 +184,12 @@ public class BoardColl extends Coll<Board> implements BoardInterface
|
|||||||
// MAP GENERATION
|
// MAP GENERATION
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ArrayList<String> getMap(RelationParticipator observer, PS centerPs, double inDegrees)
|
public ArrayList<String> getMap(RelationParticipator observer, PS centerPs, double inDegrees, int width, int height)
|
||||||
{
|
{
|
||||||
if (centerPs == null) return null;
|
if (centerPs == null) return null;
|
||||||
Board board = this.get(centerPs.getWorld());
|
Board board = this.get(centerPs.getWorld());
|
||||||
if (board == null) return null;
|
if (board == null) return null;
|
||||||
return board.getMap(observer, centerPs, inDegrees);
|
return board.getMap(observer, centerPs, inDegrees, width, height);
|
||||||
}
|
}
|
||||||
|
|
||||||
// -------------------------------------------- //
|
// -------------------------------------------- //
|
||||||
|
@ -36,6 +36,6 @@ public interface BoardInterface
|
|||||||
|
|
||||||
// MAP
|
// MAP
|
||||||
// TODO: Could the degrees be embedded in centerPs yaw instead?
|
// TODO: Could the degrees be embedded in centerPs yaw instead?
|
||||||
public ArrayList<String> getMap(RelationParticipator observer, PS centerPs, double inDegrees);
|
public ArrayList<String> getMap(RelationParticipator observer, PS centerPs, double inDegrees, int width, int height);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user