X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2FGameInitDispose.cpp;h=e08ff8efc712823c24902ddff34dba64fb44f09b;hb=3de67c0db8c3c74f5fb487579936a07770d253a1;hp=c12904d3726a6ca6b0e94ff3930ecd316f9d5203;hpb=f66f0e0b961dd138e4a60554373de9e64abd973b;p=lugaru.git diff --git a/Source/GameInitDispose.cpp b/Source/GameInitDispose.cpp index c12904d..e08ff8e 100644 --- a/Source/GameInitDispose.cpp +++ b/Source/GameInitDispose.cpp @@ -20,9 +20,10 @@ along with Lugaru. If not, see . #include "Game.h" #include "openal_wrapper.h" -#include "Animation.h" +#include "Animation/Animation.h" #include "Texture.h" #include "Utils/Folders.h" +#include "Menu.h" extern float screenwidth, screenheight; extern float viewdistance; @@ -78,11 +79,11 @@ void Dispose() LOGFUNC; if (Game::endgame == 2) { - Game::accountactive->endGame(); + Account::active->endGame(); Game::endgame = 0; } - Account::saveFile(Folders::getUserDataPath()+"/users", Game::accountactive); + Account::saveFile(Folders::getUserDataPath()+"/users"); //textures.clear(); @@ -457,7 +458,7 @@ void Game::InitGame() numchallengelevels = 14; - accountactive = Account::loadFile(Folders::getUserDataPath()+"/users"); + Account::active = Account::loadFile(Folders::getUserDataPath()+"/users"); whichjointstartarray[0] = righthip; whichjointendarray[0] = rightfoot; @@ -627,7 +628,9 @@ void Game::InitGame() newscreenwidth = screenwidth; newscreenheight = screenheight; - LoadMenu(); + Menu::Load(); + + Animation::loadAll(); } @@ -819,58 +822,59 @@ void Game::LoadStuff() firstload = 0; - loadAllAnimations(); //Fix knife stab, too lazy to do it manually XYZ moveamount; moveamount = 0; moveamount.z = 2; - for (i = 0; i < Person::players[0]->skeleton.num_joints; i++) { - for (j = 0; j < animation[knifesneakattackanim].numframes; j++) { - animation[knifesneakattackanim].position[i][j] += moveamount; + // FIXME - Why this uses skeleton.joints.size() and not Animation::numjoints? (are they equal?) + // It seems skeleton.joints.size() is 0 at this point, so this is useless. + for (i = 0; i < Person::players[0]->skeleton.joints.size(); i++) { + for (j = 0; j < Animation::animations[knifesneakattackanim].frames.size(); j++) { + Animation::animations[knifesneakattackanim].frames[j].joints[i].position += moveamount; } } LoadingScreen(); - for (i = 0; i < Person::players[0]->skeleton.num_joints; i++) { - for (j = 0; j < animation[knifesneakattackedanim].numframes; j++) { - animation[knifesneakattackedanim].position[i][j] += moveamount; + for (i = 0; i < Person::players[0]->skeleton.joints.size(); i++) { + for (j = 0; j < Animation::animations[knifesneakattackedanim].frames.size(); j++) { + Animation::animations[knifesneakattackedanim].frames[j].joints[i].position += moveamount; } } LoadingScreen(); - for (i = 0; i < Person::players[0]->skeleton.num_joints; i++) { - animation[dead1anim].position[i][1] = animation[dead1anim].position[i][0]; - animation[dead2anim].position[i][1] = animation[dead2anim].position[i][0]; - animation[dead3anim].position[i][1] = animation[dead3anim].position[i][0]; - animation[dead4anim].position[i][1] = animation[dead4anim].position[i][0]; + for (i = 0; i < Person::players[0]->skeleton.joints.size(); i++) { + Animation::animations[dead1anim].frames[1].joints[i].position = Animation::animations[dead1anim].frames[0].joints[i].position; + Animation::animations[dead2anim].frames[1].joints[i].position = Animation::animations[dead2anim].frames[0].joints[i].position; + Animation::animations[dead3anim].frames[1].joints[i].position = Animation::animations[dead3anim].frames[0].joints[i].position; + Animation::animations[dead4anim].frames[1].joints[i].position = Animation::animations[dead4anim].frames[0].joints[i].position; } - animation[dead1anim].speed[0] = 0.001; - animation[dead2anim].speed[0] = 0.001; - animation[dead3anim].speed[0] = 0.001; - animation[dead4anim].speed[0] = 0.001; - - animation[dead1anim].speed[1] = 0.001; - animation[dead2anim].speed[1] = 0.001; - animation[dead3anim].speed[1] = 0.001; - animation[dead4anim].speed[1] = 0.001; - - for (i = 0; i < Person::players[0]->skeleton.num_joints; i++) { - for (j = 0; j < animation[swordsneakattackanim].numframes; j++) { - animation[swordsneakattackanim].position[i][j] += moveamount; + Animation::animations[dead1anim].frames[0].speed = 0.001; + Animation::animations[dead2anim].frames[0].speed = 0.001; + Animation::animations[dead3anim].frames[0].speed = 0.001; + Animation::animations[dead4anim].frames[0].speed = 0.001; + + Animation::animations[dead1anim].frames[1].speed = 0.001; + Animation::animations[dead2anim].frames[1].speed = 0.001; + Animation::animations[dead3anim].frames[1].speed = 0.001; + Animation::animations[dead4anim].frames[1].speed = 0.001; + + for (i = 0; i < Person::players[0]->skeleton.joints.size(); i++) { + for (j = 0; j < Animation::animations[swordsneakattackanim].frames.size(); j++) { + Animation::animations[swordsneakattackanim].frames[j].joints[i].position += moveamount; } } LoadingScreen(); - for (j = 0; j < animation[swordsneakattackanim].numframes; j++) { - animation[swordsneakattackanim].weapontarget[j] += moveamount; + for (j = 0; j < Animation::animations[swordsneakattackanim].frames.size(); j++) { + Animation::animations[swordsneakattackanim].frames[j].weapontarget += moveamount; } LoadingScreen(); - for (i = 0; i < Person::players[0]->skeleton.num_joints; i++) { - for (j = 0; j < animation[swordsneakattackedanim].numframes; j++) { - animation[swordsneakattackedanim].position[i][j] += moveamount; + for (i = 0; i < Person::players[0]->skeleton.joints.size(); i++) { + for (j = 0; j < Animation::animations[swordsneakattackedanim].frames.size(); j++) { + Animation::animations[swordsneakattackedanim].frames[j].joints[i].position += moveamount; } }