FUNC INT B_NuggetMob_Bestimmung()
{
//bin ich mobsi X und habe ich noch Gold übrig?
if Hlp_StrCmp (Npc_GetNearestWP (self), "KOPACZ_KOPIE") && (GoldMob_01_Amount_MAX > GoldMob_01_Amount)
{
GoldMob_01_Amount = (GoldMob_01_Amount +1);
return TRUE;
}
else if Hlp_StrCmp (Npc_GetNearestWP (self), "KOPACZ_KOPIE1") && (GoldMob_02_Amount_MAX > GoldMob_02_Amount)
{
GoldMob_02_Amount = (GoldMob_02_Amount +1);
return TRUE;
}
else if Hlp_StrCmp (Npc_GetNearestWP (self), "KOPACZ_KOPIE2") && (GoldMob_03_Amount_MAX > GoldMob_03_Amount)
{
GoldMob_03_Amount = (GoldMob_03_Amount +1);
return TRUE;
}
else if Hlp_StrCmp (Npc_GetNearestWP (self), "KOPACZ_KOPIE3") && (GoldMob_04_Amount_MAX > GoldMob_04_Amount)
{
GoldMob_04_Amount = (GoldMob_04_Amount +1);
return TRUE;
}
else if Hlp_StrCmp (Npc_GetNearestWP (self), "KOPACZ_KOPIE4") && (GoldMob_05_Amount_MAX > GoldMob_05_Amount)
{
GoldMob_05_Amount = (GoldMob_05_Amount +1);
return TRUE;
}
else if Hlp_StrCmp (Npc_GetNearestWP (self), "KOPACZ_KOPIE5") && (GoldMob_06_Amount_MAX > GoldMob_06_Amount)
{
GoldMob_06_Amount = (GoldMob_06_Amount +1);
return TRUE;
}
else if Hlp_StrCmp (Npc_GetNearestWP (self), "KOPACZ_KOPIE6") && (GoldMob_07_Amount_MAX > GoldMob_07_Amount)
{
GoldMob_07_Amount = (GoldMob_07_Amount +1);
return TRUE;
}
else if Hlp_StrCmp (Npc_GetNearestWP (self), "KOPACZ_KOPIE7") && (GoldMob_08_Amount_MAX > GoldMob_08_Amount)
{
GoldMob_08_Amount = (GoldMob_08_Amount +1);
return TRUE;
}
else if Hlp_StrCmp (Npc_GetNearestWP (self), "KOPACZ_KOPIE10") && (GoldMob_09_Amount_MAX > GoldMob_09_Amount)
{
GoldMob_09_Amount = (GoldMob_09_Amount +1);
return TRUE;
}
};
FUNC VOID OreAbit_S1 ()
{
var C_NPC her; her = Hlp_GetNpc(PC_Hero);
if (Hlp_GetInstanceID(self)==Hlp_GetInstanceID(her))
{
self.aivar[AIV_INVINCIBLE]=TRUE;
PLAYER_MOBSI_PRODUCTION = MOBSI_OREABIT;
Ai_ProcessInfos (her);
};
};
//*******************************************************
// Skonczyl kopac
//*******************************************************
INSTANCE PC_OreAbit_End (C_Info)
{
npc = PC_Hero;
nr = 999;
condition = PC_OreAbit_End_Condition;
information = PC_OreAbit_End_Info;
permanent = TRUE;
description = DIALOG_ENDE;
};
FUNC INT PC_OreAbit_End_Condition ()
{
if (PLAYER_MOBSI_PRODUCTION == MOBSI_OREABIT)
{
return TRUE;
};
};
FUNC VOID PC_OreAbit_End_Info()
{
Truemmer_Count = 0;
B_ENDPRODUCTIONDIALOG ();
};
//*******************************************************
// Kopie
//*******************************************************
INSTANCE PC_OreAbit_Hour (C_Info)
{
npc = PC_Hero;
nr = 2;
condition = PC_OreAbit_Hour_Condition;
information = PC_OreAbit_Hour_Info;
permanent = TRUE;
description = "Odłup trochę.";
};
FUNC INT PC_OreAbit_Hour_Condition ()
{
if (PLAYER_MOBSI_PRODUCTION == MOBSI_OREABIT)
{
return TRUE;
};
};
var int OreNugget;
FUNC VOID PC_OreAbit_Hour_Info()
{
//---------- Learning by doing 10 PKT---------
Learn_by_doing = (Learn_by_doing +1);
if (Learn_by_doing == 10)
{
B_Upgrade_Hero_HackChance (2);
}
else if (Learn_by_doing == 15)
{
B_Upgrade_Hero_HackChance (3);
}
else if (Learn_by_doing == 20)
{
B_Upgrade_Hero_HackChance (5);
};
//----- EIGENTLICHES HACKEN -------------
var int CurrentChance;
CurrentChance = Hlp_Random (100);
var int MultiNugget;
MultiNugget = Hlp_Random (10);
if (B_GoldMob_Bestimmung() == TRUE)
{
if (CurrentChance <= Hero_HackChance)
{
//----Gold verteilen-----------------------
if (OreNugget >= 20)
&& (MultiNugget >= 8)
{
CreateInvItems (hero, ItMi_Nugget, 3);
PrintScreen ("Odpadły 3 bryłki rudy!", -1, -1, FONT_ScreenSmall, 2);
Truemmer_Count = 0;
}
else if (OreNugget >= 7)
&& (MultiNugget >= 5)
{
CreateInvItems (hero, ItMi_Nugget, 2);
PrintScreen ("Odpadły 2 bryłki rudy!", -1, -1, FONT_ScreenSmall, 2);
Truemmer_Count = 0;
OreNugget = (OreNugget +1);
}
else
{
CreateInvItems (hero, ItMi_Nugget, 1);
PrintScreen ("Odpadł 1 bryłka rudy!", -1, -1, FONT_ScreenSmall, 2);
Truemmer_Count = 0;
OreNugget = (OreNugget +1);
};
}
else
{
PrintScreen ("Kawałki rudy zasypują okolicę...", -1, -1, FONT_ScreenSmall, 2);
Truemmer_Count = (Truemmer_Count +1);
};
}
else
{
PrintScreen ("Nima już nic.", -1, -1, FONT_ScreenSmall, 2);
B_ENDPRODUCTIONDIALOG ();
};
};
//*******************************************************
// Goldhacken Trümmerschlag
//*******************************************************
INSTANCE PC_OreAbit_TSchlag (C_Info)
{
npc = PC_Hero;
nr = 997;
condition = PC_OreAbit_TSchlag_Condition;
information = PC_OreAbit_TSchlag_Info;
permanent = TRUE;
description = "Mocno uderz.";
};
FUNC INT PC_OreAbit_TSchlag_Condition ()
{
if (PLAYER_MOBSI_PRODUCTION == MOBSI_OREABIT)
&& (Truemmer_Count >= 2)
&& (Knows_Truemmerschlag == TRUE)
{
return TRUE;
};
};
FUNC VOID PC_OreAbit_TSchlag_Info()
{
var int TruemmerChance;
TruemmerChance = Hlp_Random (100);
if (TruemmerChance < 5)
{
PrintScreen ("Nic...", -1, -1, FONT_ScreenSmall, 2);
}
else
{
Snd_Play ("RAVENS_EARTHQUAKE3");
Wld_PlayEffect("FX_EarthQuake", self, self, 0, 0, 0, FALSE );
if (TruemmerChance >= 85)
{
//----Gold verteilen-----------------------
CreateInvItems (hero, ItMi_Nugget, 3);
PrintScreen ("Odpadły 3 Bryłki rudy!", -1, -1, FONT_ScreenSmall, 2);
}
else if (TruemmerChance >= 50)
{
CreateInvItems (hero, ItMi_Nugget, 2);
PrintScreen ("Odpadły 2 bryłki rudy!", -1, -1, FONT_ScreenSmall, 2);
}
else
{
CreateInvItems (hero, ItMi_Nugget, 1);
PrintScreen ("Odpadł 1 bryłka rudy!", -1, -1, FONT_ScreenSmall, 2);
};
};
Truemmer_Count = 0;
};
//*******************************************************
// Goldhacken Chance
//*******************************************************
INSTANCE PC_OreAbit_Chance (C_Info)
{
npc = PC_Hero;
nr = 998;
condition = PC_OreAbit_Chance_Condition;
information = PC_OreAbit_Chance_Info;
permanent = TRUE;
description = "(Ocena zdolności)";
};
FUNC INT PC_OreAbit_Chance_Condition ()
{
if (PLAYER_MOBSI_PRODUCTION == MOBSI_OREABIT)
{
return TRUE;
};
};
FUNC VOID PC_OreAbit_Chance_Info()
{
var string ConcatText;
if (Hero_HackChance < 40)
{
ConcatText = ConcatStrings ("nic nie potrafisz (", IntToString (Hero_HackChance));
}
else if (Hero_HackChance < 40)
{
ConcatText = ConcatStrings ("coś tam jarzysz (" , IntToString (Hero_HackChance));
}
else if (Hero_HackChance < 55)
{
ConcatText = ConcatStrings ("oO masz chęci (", IntToString (Hero_HackChance));
}
else if (Hero_HackChance < 75)
{
ConcatText = ConcatStrings ("znasz się na tym dziubaniu ( ", IntToString (Hero_HackChance));
}
else if (Hero_HackChance < 90)
{
ConcatText = ConcatStrings ("eeeno pięknie ( ", IntToString (Hero_HackChance));
}
else if (Hero_HackChance < 98)
{
ConcatText = ConcatStrings ("jesteś sensejem ( ", IntToString (Hero_HackChance));
}
else
{
ConcatText = ConcatStrings ("jesteś guru,nad górami jak to u śniącego wszyscy zajarani ( ", IntToString (Hero_HackChance));
};
ConcatText = ConcatStrings (concatText, " procent)");
PrintScreen (concatText, -1, -1, FONT_ScreenSmall,2);
};
czy mógłby ktoś do tego zajrzeć,i ewentualnie jakoś pomódz? czy coś
ogólnie najbardziej wkurza mnie błąd B_Upgrade_Hero_HackChance
tzn jest to mój monolog niby przerobiony z monologa kopania złota,na monolog kopania rudy,i najpierw miałem że taka funkcja jak(Hero_HackChance),już istnieje więc w skrypcie "StoryGlobals" skopiowałem to co związane z kopaniem złota,wkleiłem niżej tyle że zmieniłem na rudę tzn linijkę (Hero_HackChance),zmieniłem na (HackChance1) i te niżej też to i w skrypci rudy później pozmieniałem no alle później zaczął wyskakiwać błąd taki jak (U:PAR Unknown Identyfiter B_Upgrade_Hero_HackChance linia 120) czyli jak się domyślam a raczej jak ktoś kiedyś mi powiedział znaczy to że nie prawidłowa identyfikacja ,w "Work\Data\Scripts\Content\Story\B_Content" znalazłem plik o tej nazwie czyli (B_Upgrade_Hero_HackChance) też skopiowałem zmieniłem nazwę na jedynkę z przodu alle nic z tego,,,ps oczywiście dodałem ten plik ze zmienioną nazwą do gothic.src,,,i oczywiście w AI_Constants dodałem linijkę MOBSI_OREABIT i nie wiem co teraz zrobić