Skip to content

Commit

Permalink
Code tidy up
Browse files Browse the repository at this point in the history
Renamed config files
  • Loading branch information
A5H73Y committed Apr 1, 2020
1 parent 2dc8a14 commit 3db6d38
Show file tree
Hide file tree
Showing 21 changed files with 187 additions and 97 deletions.
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
<p align="center"><img src="http://i.imgur.com/xPrxoVX.jpg" alt="Carz Logo"></p>

[![discord server](https://img.shields.io/discord/328154925949517824.svg)](https://discord.gg/h9d2fSd)
[![travis-ci](https://travis-ci.org/A5H73Y/Carz.svg?branch=master)](https://travis-ci.org/A5H73Y/Carz/branches)
[![tutorials](https://img.shields.io/badge/tutorials-github-brightgreen.svg)](https://a5h73y.github.io/Carz/)
[![bStats](https://img.shields.io/badge/statistics-bstats-brightgreen.svg)](https://bstats.org/plugin/bukkit/Carz)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,6 @@ public List<String> onTabComplete(CommandSender sender, Command command, String
allowedCommands.add("addCB");
}


for (String allowedCommand : allowedCommands) {
if (allowedCommand.startsWith(args[args.length - 1])) {
filteredCommands.add(allowedCommand);
Expand Down
6 changes: 3 additions & 3 deletions src/main/java/io/github/a5h73y/commands/CarzCommands.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package io.github.a5h73y.commands;

import io.github.a5h73y.Carz;
import io.github.a5h73y.conversation.CreateCarType;
import io.github.a5h73y.conversation.CreateCarTypeConversation;
import io.github.a5h73y.enums.Commands;
import io.github.a5h73y.enums.Permissions;
import io.github.a5h73y.model.Car;
Expand Down Expand Up @@ -77,7 +77,7 @@ public boolean onCommand(CommandSender sender, Command command, String label, St
return false;
}

if (!ValidationUtils.canPurchaseCar(player, args)) {
if (!ValidationUtils.canPurchaseCar(player, args.length > 1 ? args[1] : DEFAULT_CAR)) {
return false;
}

Expand Down Expand Up @@ -132,7 +132,7 @@ public boolean onCommand(CommandSender sender, Command command, String label, St
return false;
}

new CreateCarType(player).begin();
new CreateCarTypeConversation(player).begin();
break;

case "cartypes":
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package io.github.a5h73y.commands;

import io.github.a5h73y.Carz;
import io.github.a5h73y.conversation.CreateCarType;
import io.github.a5h73y.conversation.CreateCarTypeConversation;
import io.github.a5h73y.enums.Commands;
import io.github.a5h73y.other.AbstractPluginReceiver;
import io.github.a5h73y.other.PluginUtils;
Expand Down Expand Up @@ -77,7 +77,7 @@ public boolean onCommand(CommandSender sender, Command command, String label, St
break;

case "createtype":
new CreateCarType((ConsoleCommandSender) sender).begin();
new CreateCarTypeConversation((ConsoleCommandSender) sender).begin();
break;

case "cmds":
Expand Down
31 changes: 15 additions & 16 deletions src/main/java/io/github/a5h73y/configuration/Settings.java
Original file line number Diff line number Diff line change
Expand Up @@ -51,24 +51,33 @@ private void setupConfig() {
carz.getConfig().addDefault("Key.Glow", true);
carz.getConfig().addDefault("Key.GiveOnCarEnter", true);
carz.getConfig().addDefault("Key.RequireCarzKey", true);
carz.getConfig().addDefault("Key.ManualLocking.Enabled", true);
carz.getConfig().addDefault("Key.ManualLocking.ShiftAction", true);

carz.getConfig().addDefault("Speed.Start", 50.0);
carz.getConfig().addDefault("Speed.Upgrade.Increment", 25.0);
carz.getConfig().addDefault("Speed.Upgrade.Max", 200.0);

carz.getConfig().addDefault("Command.Spawn", true);
carz.getConfig().addDefault("Command.Purchase", true);
carz.getConfig().addDefault("Command.Refuel", true);
carz.getConfig().addDefault("Command.Upgrade", true);
carz.getConfig().addDefault("CommandEnabled.Spawn", true);
carz.getConfig().addDefault("CommandEnabled.Purchase", true);
carz.getConfig().addDefault("CommandEnabled.Refuel", true);
carz.getConfig().addDefault("CommandEnabled.Upgrade", true);

carz.getConfig().addDefault("Fuel.Enable", true);
carz.getConfig().addDefault("Fuel.Enabled", true);
carz.getConfig().addDefault("Fuel.ScaleCost", true);
carz.getConfig().addDefault("Fuel.StartAmount", 3000.0);
carz.getConfig().addDefault("Fuel.GaugeScale", 40);

carz.getConfig().addDefault("ClimbBlocks.AllBlocks", true);
carz.getConfig().addDefault("ClimbBlocks.Materials", new String[]{"GOLD_BLOCK"});
carz.getConfig().addDefault("ClimbBlocks.Strength", 0.05D);

carz.getConfig().addDefault("Vault.Enabled", true);
carz.getConfig().addDefault("Vault.ConfirmPurchases", true);
carz.getConfig().addDefault("Vault.Cost.Upgrade", 8.0);
carz.getConfig().addDefault("Vault.Cost.Refuel", 2.0);

carz.getConfig().addDefault("BountifulAPI.Enabled", true);

carz.getConfig().addDefault("Other.ControlCarsWhileFalling", true);
carz.getConfig().addDefault("Other.DamageEntities.Enabled", true);
carz.getConfig().addDefault("Other.DamageEntities.Damage", 20.0);
Expand All @@ -80,12 +89,6 @@ private void setupConfig() {
carz.getConfig().addDefault("Other.UseEffects", true);
carz.getConfig().addDefault("Other.UsePermissions", true);

carz.getConfig().addDefault("Other.BountifulAPI.Enabled", true);
carz.getConfig().addDefault("Other.Vault.Enabled", true);
carz.getConfig().addDefault("Other.Vault.ConfirmPurchases", true);
carz.getConfig().addDefault("Other.Vault.Cost.Upgrade", 8.0);
carz.getConfig().addDefault("Other.Vault.Cost.Refuel", 2.0);

carz.getConfig().addDefault("CarTypes.default.StartMaxSpeed", 60.0);
carz.getConfig().addDefault("CarTypes.default.MaxUpgradeSpeed", 200.0);
carz.getConfig().addDefault("CarTypes.default.Acceleration", 5.0);
Expand Down Expand Up @@ -205,10 +208,6 @@ public boolean isFuelScaleCost() {
return carz.getConfig().getBoolean("Fuel.ScaleCost");
}

public double getStartSpeed() {
return carz.getConfig().getDouble("Speed.Start");
}

public double getUpgradeIncrement() {
return carz.getConfig().getDouble("Speed.Upgrade.Increment");
}
Expand Down
6 changes: 3 additions & 3 deletions src/main/java/io/github/a5h73y/controllers/CarController.java
Original file line number Diff line number Diff line change
Expand Up @@ -212,13 +212,13 @@ private void upgradeCarSpeed(Vehicle vehicle) {
Car car = getCar(vehicle.getEntityId());
double currentMax = car.getMaxSpeed();
double maxSpeed = car.getCarDetails().getMaxUpgradeSpeed();
double upgradeBy = carz.getSettings().getUpgradeIncrement();
double upgradeAmount = carz.getSettings().getUpgradeIncrement();

if ((currentMax + upgradeBy) > maxSpeed) {//&& !event.getPlayer().hasPermission("Carz.Admin"))
if ((currentMax + upgradeAmount) > maxSpeed) {//&& !event.getPlayer().hasPermission("Carz.Admin"))
return;
}

car.setMaxSpeed(currentMax + upgradeBy);
car.setMaxSpeed(currentMax + upgradeAmount);
carz.getItemMetaUtils().setValue(VEHICLE_SPEED, vehicle, String.valueOf(car.getMaxSpeed()));
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ public class FuelController extends AbstractPluginReceiver {
*/
public FuelController(final Carz carz) {
super(carz);
USE_FUEL = carz.getConfig().getBoolean("Fuel.Enable");
USE_FUEL = carz.getConfig().getBoolean("Fuel.Enabled");
MAX_FUEL = carz.getConfig().getDouble("Fuel.StartAmount");
GAUGE_SCALE = carz.getConfig().getInt("Fuel.GaugeScale");
}
Expand Down Expand Up @@ -62,11 +62,6 @@ public void refuel(Car car) {
car.setCurrentFuel(MAX_FUEL);
}

public void refuel(Car car, Player player) {
refuel(car);
TranslationUtils.sendTranslation("Car.Refuel", player);
}

/**
* Build a formatted string of the fuel gauge, to resemble how much fuel is remaining
* @param car
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
import org.bukkit.conversations.Prompt;
import org.bukkit.conversations.StringPrompt;

public class CreateCarType extends CarzConversation {
public class CreateCarTypeConversation extends CarzConversation {

private static final String SESSION_CAR_TYPE = "carType";

Expand All @@ -32,7 +32,7 @@ public class CreateCarType extends CarzConversation {
new CarDetailQuestion("Fill Material", "FillMaterial", "AIR", STRING_PATTERN)
);

public CreateCarType(Conversable player) {
public CreateCarTypeConversation(Conversable player) {
super(player);
}

Expand Down
8 changes: 4 additions & 4 deletions src/main/java/io/github/a5h73y/enums/Commands.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@
*/
public enum Commands {

SPAWN("Command.Spawn"),
PURCHASE("Command.Purchase"),
REFUEL("Command.Refuel"),
UPGRADE("Command.Upgrade");
SPAWN("CommandEnabled.Spawn"),
PURCHASE("CommandEnabled.Purchase"),
REFUEL("CommandEnabled.Refuel"),
UPGRADE("CommandEnabled.Upgrade");

private final String configPath;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@

import io.github.a5h73y.Carz;
import io.github.a5h73y.enums.Permissions;
import io.github.a5h73y.other.AbstractPluginReceiver;
import io.github.a5h73y.other.DelayTasks;
import io.github.a5h73y.other.XMaterial;
import io.github.a5h73y.other.AbstractPluginReceiver;
import io.github.a5h73y.utility.PermissionUtils;
import io.github.a5h73y.utility.PlayerUtils;
import io.github.a5h73y.utility.TranslationUtils;
Expand Down
49 changes: 35 additions & 14 deletions src/main/java/io/github/a5h73y/listeners/SignListener.java
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@
import org.bukkit.event.block.SignChangeEvent;
import org.bukkit.event.player.PlayerInteractEvent;

import static io.github.a5h73y.controllers.CarController.DEFAULT_CAR;

public class SignListener extends AbstractPluginReceiver implements Listener {

public SignListener(Carz carz) {
Expand All @@ -44,31 +46,43 @@ public void onSignCreate(SignChangeEvent event) {
Player player = event.getPlayer();

if (!PermissionUtils.hasPermission(player, Permissions.CREATE_SIGN)) {
event.getBlock().breakNaturally();
event.setCancelled(true);
breakSignAndCancelEvent(event);
return;
}

// if it's a valid command, break, otherwise it's unknown, so cancel
switch (event.getLine(1).toLowerCase()) {
case "refuel":
case "purchase":
if (ValidationUtils.isStringValid(event.getLine(2))
&& !carz.getCarController().doesCarTypeExist(event.getLine(2))) {
player.sendMessage(Carz.getPrefix() + "That doesn't exist.");
breakSignAndCancelEvent(event);
return;
}
case "refuel":
case "upgrade":
break;
default:
TranslationUtils.sendTranslation("Error.UnknownSignCommand", player);
player.sendMessage(Carz.getPrefix() + "Valid signs: refuel, purchase, upgrade");
event.getBlock().breakNaturally();
event.setCancelled(true);
breakSignAndCancelEvent(event);
return;
}

if (ValidationUtils.isStringValid(event.getLine(3))) {
if (ValidationUtils.isDouble(event.getLine(3))) {
event.setLine(3, ChatColor.RED + event.getLine(3));

} else {
player.sendMessage(Carz.getPrefix() + "The Cost override must be numeric");
breakSignAndCancelEvent(event);
return;
}
}

//TODO handle each one
String title = StringUtils.standardizeText(event.getLine(1));
player.sendMessage(Carz.getPrefix() + title + " sign created");

event.setLine(0, Carz.getInstance().getSettings().getSignHeader());
// event.setLine(3, ChatColor.RED + String.valueOf(PurchaseType.fromString(title).getCost()));
}

/**
Expand Down Expand Up @@ -142,18 +156,20 @@ public void onSignInteract(PlayerInteractEvent event) {
}

event.setCancelled(true);
boolean hasOverriddenPrice = ValidationUtils.isDouble(lines[3]);

switch (lines[1].toLowerCase()) {
case "purchase":
if (!ValidationUtils.canPurchaseCar(player, new String[0])) {
String carType = ValidationUtils.isStringValid(lines[2]) ? lines[2].toLowerCase() : DEFAULT_CAR;
if (!ValidationUtils.canPurchaseCar(player, carType, hasOverriddenPrice)) {
return;
}

carz.getEconomyAPI().requestPurchase(player, new CarPurchase(lines[2]));
carz.getEconomyAPI().requestPurchase(player, new CarPurchase(carType));
break;

case "upgrade":
if (!ValidationUtils.canPurchaseUpgrade(player)) {
if (!ValidationUtils.canPurchaseUpgrade(player, hasOverriddenPrice)) {
return;
}

Expand All @@ -162,7 +178,7 @@ public void onSignInteract(PlayerInteractEvent event) {
break;

case "refuel":
if (!ValidationUtils.canPurchaseFuel(player)) {
if (!ValidationUtils.canPurchaseFuel(player, hasOverriddenPrice)) {
return;
}

Expand All @@ -175,8 +191,13 @@ public void onSignInteract(PlayerInteractEvent event) {
return;
}

if (ValidationUtils.isDouble(lines[3]) && carz.getEconomyAPI().isPurchasing(player)) {
carz.getEconomyAPI().getPurchasing(player).setCost(Double.parseDouble(lines[3]));
if (hasOverriddenPrice && carz.getEconomyAPI().isPurchasing(player)) {
carz.getEconomyAPI().getPurchasing(player).setCostOverride(Double.parseDouble(lines[3]));
}
}

private void breakSignAndCancelEvent(SignChangeEvent event) {
event.getBlock().breakNaturally();
event.setCancelled(true);
}
}
6 changes: 4 additions & 2 deletions src/main/java/io/github/a5h73y/listeners/VehicleListener.java
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
import org.bukkit.Effect;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.block.data.type.Slab;
import org.bukkit.enchantments.Enchantment;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Minecart;
Expand Down Expand Up @@ -215,6 +216,7 @@ public void onVehicleUpdate(VehicleUpdateEvent event) {

if (drivingCar.isFuelConsumed()) {
carz.getCarController().removeDriver(player.getName());
carz.getItemMetaUtils().setValue(VEHICLE_FUEL, event.getVehicle(), "0");
TranslationUtils.sendTranslation("Car.FuelEmpty", player);
return;
}
Expand All @@ -233,11 +235,11 @@ public void onVehicleUpdate(VehicleUpdateEvent event) {
playerLocation.setPitch(0f);

Location twoBlocksAhead = playerLocation.add(playerLocation.getDirection().multiply(2));
//TODO set Y to minecart + offset
twoBlocksAhead.setY(Math.max(playerLocation.getY() + 1, twoBlocksAhead.getY()));

// if there is a block ahead of us
if (twoBlocksAhead.getBlock().getType() != Material.AIR) {
if (twoBlocksAhead.getBlock().getType() != Material.AIR
|| twoBlocksAhead.getBlock().getBlockData() instanceof Slab) {
Location above = twoBlocksAhead.add(0, 1, 0);

// if the block above it is AIR, allow to climb
Expand Down
3 changes: 1 addition & 2 deletions src/main/java/io/github/a5h73y/model/CarDetails.java
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,7 @@ public Material getFillMaterial() {

@Override
public String toString() {
return
"\nstartMaxSpeed = " + startMaxSpeed +
return "\nstartMaxSpeed = " + startMaxSpeed +
", \nmaxUpgradeSpeed = " + maxUpgradeSpeed +
", \nacceleration = " + acceleration +
", \nfuelUsage = " + fuelUsage +
Expand Down
Loading

0 comments on commit 3db6d38

Please sign in to comment.