fix parse fuel in ED 2.0
This commit is contained in:
@@ -4,7 +4,7 @@ import java.util.Objects;
|
||||
|
||||
public class Fuel {
|
||||
private double capacity;
|
||||
private double lvl;
|
||||
private double level;
|
||||
|
||||
public double getCapacity() {
|
||||
return capacity;
|
||||
@@ -14,12 +14,12 @@ public class Fuel {
|
||||
this.capacity = capacity;
|
||||
}
|
||||
|
||||
public double getLvl() {
|
||||
return lvl;
|
||||
public double getLevel() {
|
||||
return level;
|
||||
}
|
||||
|
||||
public void setLvl(double lvl) {
|
||||
this.lvl = lvl;
|
||||
public void setLevel(double level) {
|
||||
this.level = level;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -28,7 +28,7 @@ public class Fuel {
|
||||
if (o == null || getClass() != o.getClass()) return false;
|
||||
Fuel fuel = (Fuel) o;
|
||||
return Objects.equals(capacity, fuel.capacity) &&
|
||||
Objects.equals(lvl, fuel.lvl);
|
||||
Objects.equals(level, fuel.level);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
39
utils/src/main/java/ru/trader/edce/entities/FuelTanks.java
Normal file
39
utils/src/main/java/ru/trader/edce/entities/FuelTanks.java
Normal file
@@ -0,0 +1,39 @@
|
||||
package ru.trader.edce.entities;
|
||||
|
||||
|
||||
import java.util.Objects;
|
||||
|
||||
public class FuelTanks {
|
||||
private Fuel main;
|
||||
private Fuel reserve;
|
||||
|
||||
public Fuel getMain() {
|
||||
return main;
|
||||
}
|
||||
|
||||
public void setMain(Fuel main) {
|
||||
this.main = main;
|
||||
}
|
||||
|
||||
public Fuel getReserve() {
|
||||
return reserve;
|
||||
}
|
||||
|
||||
public void setReserve(Fuel reserve) {
|
||||
this.reserve = reserve;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (this == o) return true;
|
||||
if (o == null || getClass() != o.getClass()) return false;
|
||||
FuelTanks fuelTanks = (FuelTanks) o;
|
||||
return Objects.equals(main, fuelTanks.main) &&
|
||||
Objects.equals(reserve, fuelTanks.reserve);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return Objects.hash(main, reserve);
|
||||
}
|
||||
}
|
||||
@@ -2,11 +2,14 @@ package ru.trader.edce.entities;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonIgnore;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
|
||||
public class Ship {
|
||||
private String name;
|
||||
private Fuel fuel;
|
||||
private FuelTanks fuel;
|
||||
private Cargo cargo;
|
||||
private Map<String, List<Slot>> modules = new LinkedHashMap<>();
|
||||
|
||||
@@ -18,11 +21,11 @@ public class Ship {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public Fuel getFuel() {
|
||||
public FuelTanks getFuel() {
|
||||
return fuel;
|
||||
}
|
||||
|
||||
public void setFuel(Fuel fuel) {
|
||||
public void setFuel(FuelTanks fuel) {
|
||||
this.fuel = fuel;
|
||||
}
|
||||
|
||||
@@ -43,13 +46,13 @@ public class Ship {
|
||||
}
|
||||
|
||||
@JsonIgnore
|
||||
public double getFuelLvl(){
|
||||
return fuel != null ? fuel.getLvl() : 0;
|
||||
public double getFuelLevel(){
|
||||
return fuel != null ? fuel.getMain().getLevel() : 0;
|
||||
}
|
||||
|
||||
@JsonIgnore
|
||||
public double getFuelCapacity(){
|
||||
return fuel != null ? fuel.getCapacity() : 0;
|
||||
return fuel != null ? fuel.getMain().getCapacity() : 0;
|
||||
}
|
||||
|
||||
@JsonIgnore
|
||||
|
||||
@@ -7,7 +7,10 @@ import org.slf4j.LoggerFactory;
|
||||
import ru.trader.edce.entities.*;
|
||||
import ru.trader.edce.entities.System;
|
||||
|
||||
import java.io.*;
|
||||
import java.io.BufferedReader;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.InputStreamReader;
|
||||
import java.util.List;
|
||||
|
||||
public class ParseTest extends Assert {
|
||||
@@ -68,7 +71,7 @@ public class ParseTest extends Assert {
|
||||
assertNotNull(ship);
|
||||
assertEquals("CobraMkIII", ship.getName());
|
||||
assertEquals(16, ship.getFuelCapacity(), 0.0001);
|
||||
assertEquals(16, ship.getFuelLvl(), 0.0001);
|
||||
assertEquals(16, ship.getFuelLevel(), 0.0001);
|
||||
assertEquals(12, ship.getCargoCapacity());
|
||||
assertEquals(8, ship.getCargoLimit());
|
||||
Module fsd = ship.getFSD();
|
||||
@@ -159,7 +162,7 @@ public class ParseTest extends Assert {
|
||||
assertNotNull(ship);
|
||||
assertEquals("CobraMkIII", ship.getName());
|
||||
assertEquals(16, ship.getFuelCapacity(), 0.0001);
|
||||
assertEquals(12.47372, ship.getFuelLvl(), 0.0001);
|
||||
assertEquals(12.47372, ship.getFuelLevel(), 0.0001);
|
||||
assertEquals(0, ship.getCargoCapacity());
|
||||
assertEquals(0, ship.getCargoLimit());
|
||||
Module fsd = ship.getFSD();
|
||||
|
||||
@@ -6710,11 +6710,14 @@
|
||||
"cockpitBreached": false,
|
||||
"oxygenRemaining": 450000,
|
||||
"fuel": {
|
||||
"capacity": 16,
|
||||
"lvl": 16
|
||||
"main": {
|
||||
"level": 16,
|
||||
"capacity": 16
|
||||
},
|
||||
"reserve": {
|
||||
"lvl": 1
|
||||
"level": 1,
|
||||
"capacity": 1
|
||||
}
|
||||
},
|
||||
"cargo": {
|
||||
"capacity": 12,
|
||||
|
||||
@@ -2448,11 +2448,14 @@
|
||||
"cockpitBreached": false,
|
||||
"oxygenRemaining": 450000,
|
||||
"fuel": {
|
||||
"capacity": 16,
|
||||
"lvl": 12.47372
|
||||
"main": {
|
||||
"level": 12.47372,
|
||||
"capacity": 16
|
||||
},
|
||||
"reserve": {
|
||||
"lvl": 0.587228
|
||||
"level": 0.587228,
|
||||
"capacity": 1
|
||||
}
|
||||
},
|
||||
"cargo": {
|
||||
"capacity": 0,
|
||||
|
||||
6501
utils/src/test/resources/edce/edce_v201.json
Normal file
6501
utils/src/test/resources/edce/edce_v201.json
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user