Pokazanie obecnego doświadczenia przy otrzynamanuy XP. 1163 3

O temacie

Autor lucki666

Zaczęty 3.01.2021 roku

Wyświetleń 1163

Odpowiedzi 3

lucki666

lucki666

Użytkownicy
posty130
Propsy64
ProfesjaSkrypter
  • Użytkownicy

Widziałem w jednym z modów, że podczas zdobycia doświadczenia, pokazuje się obok również stan obecnego XP oraz limit do następnego poziomu. Jest to bardzo fajna opcja, bo sam co kilkanaście minut zawsze sprawdzam "ile do poziomu".

tak jak na zdjęciu

Chciałbym tylko zmienić, że "Stan" pokazywałby się niżej, a nie obok. Jak to przyjaciele uzyskać?

Mój skrypt pliku B_GivePlayerXP, ale zamiast stanu pokazuje się napis w cudzysłowie.
Dołączam zdjęcie.
Spoiler
// **************
// B_GivePlayerXP
// **************

func void B_GivePlayerXP (var int add_xp)
{
   if (hero.level == 0)
   {
      hero.exp_next = 500;
   };
   //----------------------------------------------------------------------------
   hero.exp = hero.exp + add_xp;

   //----------------------------------------------------------------------------
   var string concatText;
   concatText = PRINT_XPGained;
   concatText = ConcatStrings (concatText,   IntToString(add_xp));
   PrintScreen   (concatText, 2, 62, FONT_ScreenSmall, 3);
   PrintScreen   (" hero.exp/hero.exp_next ", 2, 64, FONT_ScreenSmall, 3);

   //----------------------------------------------------------------------------
   if ( hero.exp >= hero.exp_next ) // ( XP > (500*((hero.level+2)/2)*(hero.level+1)) )
   {
      hero.level = hero.level+1;
      hero.exp_next = hero.exp_next +((hero.level+1)*500);
      
      hero.attribute[ATR_HITPOINTS_MAX]    = hero.attribute[ATR_HITPOINTS_MAX]   + HP_PER_LEVEL;
      hero.attribute[ATR_HITPOINTS]       = hero.attribute[ATR_HITPOINTS]      + HP_PER_LEVEL;
      
      hero.LP = hero.LP + LP_PER_LEVEL;
            
      PrintScreen (PRINT_LevelUp, 2, 50, FONT_Screen, 6);            
      Snd_Play ("LevelUp");
   };
   B_Checklog ();
};
 

Cruc

Cruc

Użytkownicy
posty666
Propsy232
Profesjabrak
  • Użytkownicy
No ale masz stan niżej, więc w czym problem?
 
while (!success) try{...}

Najlepszy modder od gothic multiplayer - polecam pytać go o wszystko!

Splash

Splash

Moderator
posty4207
Propsy3403
ProfesjaNierób
  • Moderator
var string str; str = ConcatStrings(IntToString(hero.exp), " / ");
str = ConcatStrings(str, IntToString(hero.exp_next));
PrintScreen(str, 2, 64, FONT_ScreenSmall, 3);
 
Nie zajmuję się multiplayerami do Gothica. Przestańcie zawracać mi tym głowę...
Ps. Siemekk ma downa i śpi w pufie

lucki666

lucki666

Użytkownicy
posty130
Propsy64
ProfesjaSkrypter
  • Użytkownicy
Super, działa. Wielkie dzięki.

@Splash A podpowiesz mi proszę jak dodać napis "Stan doświadczenia:" X / Y w tej samej linijce?
 


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry