Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Wiadomości - Polson

Strony: [1]
1
Skrypty / Tabela doświadczenia
« dnia: 2011-07-23, 20:25 »
Zamieniłem, ale nadal jest to samo.

Może jest jakiś błąd?

@edit

Dopiero teraz się dowiedziałem, że źle to robie, mało tego nawet z pomocą poradnika nie wiem jak to zrobić. Nie wiem nawet jak zacząć.

Dasz rade pomóc za pomocą GG albo Skype?

2
Skrypty / Tabela doświadczenia
« dnia: 2011-07-23, 16:59 »
@Adanos
Nie za bardzo wiem co dalej?

const int   LP_PER_LEVEL            = 10;   // Lernpunkte pro Spieler-Stufe
//const int   HP_PER_LEVEL            = 15;   // Lebenspunkte pro Spieler-Stufe
const int   XP_PER_LEVEL_UNCONSCIOUS   = 5;   // Erfahrungspunkte für das Besiegen eines Gegners (pro Level Gegners)
const int   XP_PER_LEVEL_DEAD         = 10;   // Erfahrungspunkte für das Töten eines Gegners (pro Level Gegners)


func void B_GiveXP (var int add_xp)
{
   PrintDebugNpc   (PD_ZS_FRAME,   "B_GiveXP");

   var int   HP_PER_LEVEL;
   
   if (hero.level > 40)
   {
      HP_PER_LEVEL = 1;
   }else
   if (hero.level > 30)
   {
      HP_PER_LEVEL = 5;
         }else
   if (hero.level > 20)
   {
      HP_PER_LEVEL = 10;
   }else
   if (hero.level > 10)
   {
      HP_PER_LEVEL = 10;
   }else
   {
      HP_PER_LEVEL = 15;
   };
   
   if (hero.level == 0)
   {
      hero.exp_next = 500;
   };
   //----------------------------------------------------------------------------
   hero.exp = hero.exp + add_xp;

   //----------------------------------------------------------------------------
   var string msg;
   msg = NAME_XPGained;
   msg = ConcatStrings(msg,   IntToString(add_xp));
   PrintScreen   (msg, -1,_YPOS_MESSAGE_XPGAINED,"font_old_10_white.tga",_TIME_MESSAGE_XPGAINED);

   //----------------------------------------------------------------------------
   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.level/7)+1));
      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;            //+ hero.level;
      PrintScreen      (NAME_LevelUp, -1,_YPOS_MESSAGE_LEVELUP,"font_old_20_white.tga",_TIME_MESSAGE_LEVELUP);
      Snd_Play      ("LevelUp");
   };
};

func void B_DeathXP()
{
   PrintDebugNpc      (PD_ZS_FRAME,   "B_DeathXP");
   PrintGlobals      (PD_ZS_CHECK);
   
   if   C_NpcIsHuman(self)
   &&   Npc_WasInState(self, ZS_Unconscious)
   {
      PrintDebugNpc   (PD_ZS_CHECK,   "...Opfer ist bewußtloser Mensch!");
      // SN: keine XP für Finishing-Move!!!
   }
   else
   {
      PrintDebugNpc   (PD_ZS_CHECK,   "...Opfer ist entweder nicht bewußtlos oder kein Mensch!");
      B_GiveXP (self.level * XP_PER_LEVEL_DEAD);
   };
};

func void B_UnconciousXP()
{
   PrintDebugNpc   (PD_ZS_FRAME,   "B_UnconciousXP");
   PrintGlobals   (PD_ZS_CHECK);
      
   //-------- Erfahrung nur beim ersten Sieg über Menschen --------
   if   !C_NpcIsHuman(self)
   ||   !self.aivar[AIV_WASDEFEATEDBYSC]
   {
      PrintDebugNpc   (PD_ZS_CHECK,   "...erster Sieg!");
      B_GiveXP (self.level * XP_PER_LEVEL_DEAD);      // die vollen XP beim Sieg vergeben, da finishing-Move keine XPs mehr ergibt!
   };
};

3
Skrypty / Tabela doświadczenia
« dnia: 2011-07-22, 23:51 »
Trzeba przyznać, że mi bardzo pomogliście...

4
Skrypty / Tabela doświadczenia
« dnia: 2011-07-21, 21:36 »
Pytanie kieruje do osób, które potrafią zmienić tabele doświadczenia.
Chciałbym żeby doświadczenie postępowało tak jak w zwykłym Gothicu.

Gothic            /          Gothic MT 2.02
 1. 500............                    1. 500
 2. 1500  .........                   2. 1500
 3. 3000  .........                   3. 3000
 4. 5000   .........                  4. 5000
 5. 7500    .........                 5. 7500
 6. 10500  .......                  6. 10500
 7. 14000  .......                  7. 14000
 8. 18000   ......                 8. 22000
 9. 22500  ......                      9. 31000
10. 27500   ....                     10. 41000

Pogrubioną czcionką zaznaczyłem skok wymaganego doświadczenia na lvl.
Mam nadzieje, że ktoś może mi pomóc ;/

Strony: [1]
Do góry