mirror of
https://github.com/devZoGok/PlanetFleet.git
synced 2026-08-26 19:43:29 +00:00
variable resource collection speed
This commit is contained in:
@@ -198,6 +198,7 @@ units = {
|
||||
armor = {ArmorType.CAST},
|
||||
capacity = 3000,
|
||||
loadRate = 1,
|
||||
loadSpeed = 5,
|
||||
isVehicle = true,
|
||||
health = 500,
|
||||
buildTime = 1000,
|
||||
@@ -519,6 +520,7 @@ units = {
|
||||
health = 500,
|
||||
buildTime = 1000,
|
||||
drawRate = 1,
|
||||
drawSpeed = 5,
|
||||
cost = 500,
|
||||
size = {x = 4, y = 1.15, z = 4},
|
||||
hitboxOffset = {x = 0, y = 0, z = 0},
|
||||
|
||||
+2
-1
@@ -29,6 +29,7 @@ namespace battleship{
|
||||
|
||||
sol::table unitTable = generateView()["units"][id + 1];
|
||||
drawRate = unitTable["drawRate"];
|
||||
drawSpeed = unitTable["drawSpeed"];
|
||||
|
||||
Vector2 size = Vector2(lenHpBar, 10);
|
||||
ammountBackground = Unit::createBar(Vector2::VEC_ZERO, size, Vector4(0, 0, 0, 1));
|
||||
@@ -59,7 +60,7 @@ namespace battleship{
|
||||
}
|
||||
|
||||
void Extractor::draw(){
|
||||
deposit->decrementAmmount();
|
||||
deposit->decreaseAmmount(drawSpeed);
|
||||
lastDrawTime = getTime();
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -17,7 +17,7 @@ namespace battleship{
|
||||
bool canDraw(){return vb01::getTime() - lastDrawTime > drawRate;}
|
||||
inline ResourceDeposit* getDeposit(){return deposit;}
|
||||
private:
|
||||
int drawRate;
|
||||
int drawSpeed, drawRate;
|
||||
vb01::s64 lastDrawTime = 0;
|
||||
vb01::Node *ammountBackground = nullptr, *ammountForeground = nullptr;
|
||||
ResourceDeposit *deposit = nullptr;
|
||||
|
||||
+1
-1
@@ -10,7 +10,7 @@ namespace battleship{
|
||||
~ResourceDeposit();
|
||||
inline int getAmmount(){return ammount;}
|
||||
inline int getInitAmmount(){return initAmmount;}
|
||||
inline void decrementAmmount(){ammount--;}
|
||||
inline void decreaseAmmount(int amnt){ammount -= amnt;}
|
||||
private:
|
||||
int ammount, initAmmount;
|
||||
|
||||
|
||||
+3
-2
@@ -16,6 +16,7 @@ namespace battleship{
|
||||
ResourceRover::ResourceRover(Player *player, int id, Vector3 pos, Quaternion rot) : Vehicle(player, id, pos, rot) {
|
||||
sol::table unitTable = generateView()["units"][id + 1];
|
||||
capacity = unitTable["capacity"];
|
||||
loadSpeed = unitTable["loadSpeed"];
|
||||
loadRate = unitTable["loadRate"];
|
||||
|
||||
Vector2 size = Vector2(lenHpBar, 10);
|
||||
@@ -53,7 +54,7 @@ namespace battleship{
|
||||
if(canLoad() && deposit->getAmmount() > 0){
|
||||
if(nearestExtractor->canDraw()){
|
||||
nearestExtractor->draw();
|
||||
load++;
|
||||
load += loadSpeed;
|
||||
lastLoadTime = getTime();
|
||||
}
|
||||
}
|
||||
@@ -69,7 +70,7 @@ namespace battleship{
|
||||
|
||||
if(nearestRefinery && nearestRefinery->getPos().getDistanceFrom(pos) <= minDist){
|
||||
if(canUnload()){
|
||||
load--;
|
||||
load -= loadSpeed;
|
||||
player->addRefineds(1);
|
||||
lastLoadTime = getTime();
|
||||
}
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@ namespace battleship{
|
||||
inline bool canUnload(){return vb01::getTime() - lastLoadTime > loadRate && load > 0;}
|
||||
|
||||
vb01::s64 lastLoadTime = 0;
|
||||
int load = 0, capacity, loadRate;
|
||||
int load = 0, capacity, loadRate, loadSpeed;
|
||||
Extractor *nearestExtractor = nullptr;
|
||||
Unit *nearestRefinery = nullptr;
|
||||
vb01::Node *loadBackground = nullptr, *loadForeground = nullptr;
|
||||
|
||||
Reference in New Issue
Block a user