]> git.jsancho.org Git - lugaru.git/commitdiff
Merge branch 'master' of gitlab.com:osslugaru/lugaru
authorCôme Chilliet <come@chilliet.eu>
Fri, 3 Feb 2017 23:58:10 +0000 (00:58 +0100)
committerCôme Chilliet <come@chilliet.eu>
Fri, 3 Feb 2017 23:58:10 +0000 (00:58 +0100)
1  2 
Source/Devtools/ConsoleCmds.cpp
Source/GameTick.cpp

index 16effbdfd0b03d1df9378bdca892418d1ca51f85,49ff375c987c78572970bd863760cf343c9e126b..84252e3040a92a84943bb0a30411550d9092cb97
@@@ -84,7 -84,18 +84,7 @@@ static void set_proportion(int pnum, co
  
      sscanf(args, "%f%f%f%f", &headprop, &bodyprop, &armprop, &legprop);
  
 -    if (Person::players[pnum]->creature == wolftype) {
 -        Person::players[pnum]->proportionhead = 1.1 * headprop;
 -        Person::players[pnum]->proportionbody = 1.1 * bodyprop;
 -        Person::players[pnum]->proportionarms = 1.1 * armprop;
 -        Person::players[pnum]->proportionlegs = 1.1 * legprop;
 -    } else if (Person::players[pnum]->creature == rabbittype) {
 -        Person::players[pnum]->proportionhead = 1.2 * headprop;
 -        Person::players[pnum]->proportionbody = 1.05 * bodyprop;
 -        Person::players[pnum]->proportionarms = 1.00 * armprop;
 -        Person::players[pnum]->proportionlegs = 1.1 * legprop;
 -        Person::players[pnum]->proportionlegs.y = 1.05 * legprop;
 -    }
 +    Person::players[pnum]->setProportions(headprop, bodyprop, armprop, legprop);
  }
  
  static void set_protection(int pnum, const char* args)
@@@ -280,7 -291,22 +280,7 @@@ void ch_save(const char* args
          fpackf(tfile, "Bf Bf Bf", Person::players[j]->protectionhead, Person::players[j]->protectionhigh, Person::players[j]->protectionlow);
          fpackf(tfile, "Bf Bf Bf", Person::players[j]->metalhead, Person::players[j]->metalhigh, Person::players[j]->metallow);
          fpackf(tfile, "Bf Bf", Person::players[j]->power, Person::players[j]->speedmult);
 -
 -        float headprop, bodyprop, armprop, legprop;
 -        if (Person::players[j]->creature == wolftype) {
 -            headprop = Person::players[j]->proportionhead.x / 1.1;
 -            bodyprop = Person::players[j]->proportionbody.x / 1.1;
 -            armprop = Person::players[j]->proportionarms.x / 1.1;
 -            legprop = Person::players[j]->proportionlegs.x / 1.1;
 -        } else {
 -            // rabbittype
 -            headprop = Person::players[j]->proportionhead.x / 1.2;
 -            bodyprop = Person::players[j]->proportionbody.x / 1.05;
 -            armprop = Person::players[j]->proportionarms.x / 1.00;
 -            legprop = Person::players[j]->proportionlegs.x / 1.1;
 -        }
 -
 -        fpackf(tfile, "Bf Bf Bf Bf", headprop, bodyprop, armprop, legprop);
 +        fpackf(tfile, "Bf Bf Bf Bf", Person::players[j]->getProportion(0), Person::players[j]->getProportion(1), Person::players[j]->getProportion(2), Person::players[j]->getProportion(3));
  
          fpackf(tfile, "Bi", Person::players[j]->numclothes);
          if (Person::players[j]->numclothes) {
@@@ -446,6 -472,14 +446,6 @@@ void ch_belt(const char*
  void ch_cellophane(const char*)
  {
      cellophane = !cellophane;
 -    float mul = (cellophane ? 0 : 1);
 -
 -    for (auto player : Person::players) {
 -        player->proportionhead.z = player->proportionhead.x * mul;
 -        player->proportionbody.z = player->proportionbody.x * mul;
 -        player->proportionarms.z = player->proportionarms.x * mul;
 -        player->proportionlegs.z = player->proportionlegs.x * mul;
 -    }
  }
  
  void ch_funnybunny(const char*)
@@@ -462,15 -496,11 +462,11 @@@ void ch_wolfie(const char*
  {
      Person::players[0]->creature = wolftype;
      Person::players[0]->skeletonLoad();
+     Person::players[0]->scale = .23;
      Person::players[0]->damagetolerance = 300;
      set_proportion(0, "1 1 1 1");
  }
  
- void ch_wolfieisgod(const char* args)
- {
-     ch_wolfie(args);
- }
  void ch_wolf(const char*)
  {
      Person::players[0]->skeleton.drawmodel.textureptr.load("Textures/Wolf.jpg", 1, &Person::players[0]->skeleton.skinText[0], &Person::players[0]->skeleton.skinsize);
@@@ -644,7 -674,18 +640,7 @@@ void ch_default(const char*
      Person::players[0]->speedmult = 1;
      Person::players[0]->scale = 1;
  
 -    if (Person::players[0]->creature == wolftype) {
 -        Person::players[0]->proportionhead = 1.1;
 -        Person::players[0]->proportionbody = 1.1;
 -        Person::players[0]->proportionarms = 1.1;
 -        Person::players[0]->proportionlegs = 1.1;
 -    } else if (Person::players[0]->creature == rabbittype) {
 -        Person::players[0]->proportionhead = 1.2;
 -        Person::players[0]->proportionbody = 1.05;
 -        Person::players[0]->proportionarms = 1.00;
 -        Person::players[0]->proportionlegs = 1.1;
 -        Person::players[0]->proportionlegs.y = 1.05;
 -    }
 +    Person::players[0]->setProportions(1, 1, 1, 1);
  
      Person::players[0]->numclothes = 0;
      Person::players[0]->skeleton.drawmodel.textureptr.load(
diff --combined Source/GameTick.cpp
index 82b75e54eb693d47db5ced0fc44bb3b01ca0d632,a9cf0bf6759b557e32b8d00598a0e494cf01ffcf..a0bb4b3928dddfc767f48ef7ed760dcdd9a4c267
@@@ -851,7 -851,11 +851,7 @@@ bool Game::LoadLevel(const std::string
              Person::players[i]->updatedelay = 0;
              Person::players[i]->normalsupdatedelay = 0;
  
 -            Person::players[i]->proportionhead = 1.2;
 -            Person::players[i]->proportionbody = 1.05;
 -            Person::players[i]->proportionarms = 1.00;
 -            Person::players[i]->proportionlegs = 1.1;
 -            Person::players[i]->proportionlegs.y = 1.05;
 +            Person::players[i]->setProportions(1, 1, 1, 1);
              Person::players[i]->headless = 0;
              Person::players[i]->currentoffset = 0;
              Person::players[i]->targetoffset = 0;
  
          Game::LoadingScreen();
  
 -        if (cellophane) {
 -            Person::players[i]->proportionhead.z = 0;
 -            Person::players[i]->proportionbody.z = 0;
 -            Person::players[i]->proportionarms.z = 0;
 -            Person::players[i]->proportionlegs.z = 0;
 -        }
 -
          Person::players[i]->tempanimation = Animation("Tempanim", lowheight, neutral);
  
          if (i == 0) {
@@@ -1055,6 -1066,8 +1055,6 @@@ void Game::ProcessDevInput(
          return;
      }
  
 -    float headprop, bodyprop, armprop, legprop;
 -
      /* Console */
      if (Input::isKeyPressed(consolekey)) {
          console = !console;
                  closest = findClosestPlayer();
              }
  
-             // FIXME: Those proportions are buggy
              if (closest >= 0) {
                  if (Person::players[closest]->creature == rabbittype) {
                      Person::players[closest]->creature = wolftype;
                      Person::players[closest]->whichskin = 0;
                      Person::players[closest]->skeletonLoad();
-                     Person::players[closest]->scale = .23 * 5 * Person::players[0]->scale;
 -
 -                    Person::players[closest]->proportionhead = 1.1;
 -                    Person::players[closest]->proportionbody = 1.1;
 -                    Person::players[closest]->proportionarms = 1.1;
 -                    Person::players[closest]->proportionlegs = 1.1;
+                     Person::players[closest]->scale *= 1.15;
  
                      Person::players[closest]->damagetolerance = 300;
-                 } else {
+                 } else { // wolftype
                      Person::players[closest]->creature = rabbittype;
                      Person::players[closest]->whichskin = 0;
                      Person::players[closest]->skeletonLoad(true);
  
-                     Person::players[closest]->scale = .2 * 5 * Person::players[0]->scale;
 -                    Person::players[closest]->proportionhead = 1.2;
 -                    Person::players[closest]->proportionbody = 1.05;
 -                    Person::players[closest]->proportionarms = 1.00;
 -                    Person::players[closest]->proportionlegs.x = 1.1;
 -                    Person::players[closest]->proportionlegs.y = 1.05;
+                     Person::players[closest]->scale /= 1.15;
  
                      Person::players[closest]->damagetolerance = 200;
                  }
              Person::players.back()->oldcoords = Person::players.back()->coords;
              Person::players.back()->realoldcoords = Person::players.back()->coords;
  
 -            if (Person::players[0]->creature == wolftype) {
 -                headprop = Person::players[0]->proportionhead.x / 1.1;
 -                bodyprop = Person::players[0]->proportionbody.x / 1.1;
 -                armprop = Person::players[0]->proportionarms.x / 1.1;
 -                legprop = Person::players[0]->proportionlegs.x / 1.1;
 -            } else {
 -                // rabbittype
 -                headprop = Person::players[0]->proportionhead.x / 1.2;
 -                bodyprop = Person::players[0]->proportionbody.x / 1.05;
 -                armprop = Person::players[0]->proportionarms.x / 1.00;
 -                legprop = Person::players[0]->proportionlegs.x / 1.1;
 -            }
 -
 -            if (Person::players.back()->creature == wolftype) {
 -                Person::players.back()->proportionhead = 1.1 * headprop;
 -                Person::players.back()->proportionbody = 1.1 * bodyprop;
 -                Person::players.back()->proportionarms = 1.1 * armprop;
 -                Person::players.back()->proportionlegs = 1.1 * legprop;
 -            }
 -
 -            if (Person::players.back()->creature == rabbittype) {
 -                Person::players.back()->proportionhead = 1.2 * headprop;
 -                Person::players.back()->proportionbody = 1.05 * bodyprop;
 -                Person::players.back()->proportionarms = 1.00 * armprop;
 -                Person::players.back()->proportionlegs = 1.1 * legprop;
 -                Person::players.back()->proportionlegs.y = 1.05 * legprop;
 -            }
 -
 -            if (cellophane) {
 -                Person::players.back()->proportionhead.z = 0;
 -                Person::players.back()->proportionbody.z = 0;
 -                Person::players.back()->proportionarms.z = 0;
 -                Person::players.back()->proportionlegs.z = 0;
 -            }
 +            Person::players.back()->setProportions(1, 1, 1, 1);
  
              Person::players.back()->tempanimation = Animation("Tempanim", lowheight, neutral);