small bugfixes

This commit is contained in:
devZoGok
2023-11-26 12:41:16 +02:00
parent ba65842421
commit cf1d4d908e
5 changed files with 20 additions and 25 deletions
+3 -3
View File
@@ -10,7 +10,7 @@ gui = {
imagePath = '',
guiType = GuiType.BUTTON,
buttonType = ButtonType.BUILD,
trigger = 75,
trigger = 76,
structureId = 8
},
{
@@ -30,7 +30,7 @@ gui = {
imagePath = '',
guiType = GuiType.BUTTON,
buttonType = ButtonType.BUILD,
trigger = 75,
trigger = 77,
structureId = 10
},
{
@@ -50,7 +50,7 @@ gui = {
imagePath = '',
guiType = GuiType.BUTTON,
buttonType = ButtonType.BUILD,
trigger = 80,
trigger = 68,
structureId = 12
}
}
+8 -6
View File
@@ -199,12 +199,14 @@ namespace battleship{
Vector3 dragboxOrigin = dragboxNode->getPosition(), dragboxEnd = dragboxOrigin + dragboxSize;
Vector2 pos = u->getScreenPos();
if(!mainPlayer->getSelectedUnitsByClass(UnitClass::ENGINEER).empty())
guiManager->readLuaScreenScript("engineerCommands.lua");
else if(!mainPlayer->getSelectedUnitsByClass(UnitClass::LAND_FACTORY).empty())
guiManager->readLuaScreenScript("landFactoryCommands.lua");
else if(!mainPlayer->getSelectedUnitsByClass(UnitClass::NAVAL_FACTORY).empty())
guiManager->readLuaScreenScript("navalFactoryCommands.lua");
if(buttons.empty()){
if(!mainPlayer->getSelectedUnitsByClass(UnitClass::ENGINEER).empty())
guiManager->readLuaScreenScript("engineerCommands.lua");
else if(!mainPlayer->getSelectedUnitsByClass(UnitClass::LAND_FACTORY).empty())
guiManager->readLuaScreenScript("landFactoryCommands.lua");
else if(!mainPlayer->getSelectedUnitsByClass(UnitClass::NAVAL_FACTORY).empty())
guiManager->readLuaScreenScript("navalFactoryCommands.lua");
}
if(isSelectionBox && fabs(pos.x - dragboxOrigin.x) < .5 * dragboxSize.x && fabs(pos.y - dragboxOrigin.y) < .5 * dragboxSize.y){
if(!u->isSelected()){
-1
View File
@@ -1,5 +1,4 @@
#include "gameObjectFrame.h"
namespace battleship{
}
+1 -1
View File
@@ -14,7 +14,7 @@ namespace battleship{
initModel(false);
}
~GameObjectFrame(){}
void update(){GameObject::update();}
void destroy(){destroyModel();}
Status status;
};
+8 -14
View File
@@ -52,10 +52,9 @@ namespace battleship{
//TODO implement terrain evenness check
void GameObjectFrameController::placeGameObjectFrame(int id, Vector3 newPos, float width, float length){
GameObjectFrame &s = gameObjectFrames[id];
Model *model = s.getModel();
if(!rotatingStructure)
model->setPosition(newPos);
s.placeAt(newPos);
Map *map = Map::getSingleton();
MeshData meshData = map->getNodeParent()->getChild(0)->getMesh(0)->getMeshBase();
@@ -65,9 +64,9 @@ namespace battleship{
float maxUnevenness = generateView()["maxUnevenness"], unevenness = 0;
for(int i = 0; i < numVerts; i++){
float diffX = fabs(model->getPosition().x - verts[i].pos.x);
float diffY = fabs(model->getPosition().y - verts[i].pos.y);
float diffZ = fabs(model->getPosition().z - verts[i].pos.z);
float diffX = fabs(s.getPos().x - verts[i].pos.x);
float diffY = fabs(s.getPos().y - verts[i].pos.y);
float diffZ = fabs(s.getPos().z - verts[i].pos.z);
if(diffX < 0.5 * width && diffZ < 0.5 * length && diffY > unevenness){
unevenness = diffY;
@@ -88,7 +87,7 @@ namespace battleship{
s.status = GameObjectFrame::PLACEABLE;
}
Material *mat = model->getMaterial();
Material *mat = s.getModel()->getMaterial();
mat->setVec4Uniform("diffuseColor", color);
}
@@ -123,9 +122,7 @@ namespace battleship{
}
void GameObjectFrameController::removeGameObjectFrame(int i){
Model *model = gameObjectFrames[i].getModel();
model->getParent()->dettachChild(model);
delete model;
gameObjectFrames[i].destroy();
gameObjectFrames.erase(gameObjectFrames.begin() + i);
}
@@ -136,10 +133,7 @@ namespace battleship{
void GameObjectFrameController::rotateGameObjectFrames(float angle){
for(GameObjectFrame &s : gameObjectFrames)
if(s.status != GameObjectFrame::PLACED){
Model *model = s.getModel();
Quaternion rot = model->getOrientation();
model->setOrientation(Quaternion(angle, Vector3::VEC_J) * rot);
}
if(s.status != GameObjectFrame::PLACED)
s.orientAt(Quaternion(angle, Vector3::VEC_J) * s.getRot());
}
}