olbrzymia poprawa wydajności WIELKIE DZIĘKI!!! ale dalej mi troszke tnie nieznacznie ale tnie może jeszcze jakieś rady pokazuje tick tocka
Spoiler
func void TICK_TOCK()
{
jednorazowe_wywolanie +=1;
if (jednorazowe_wywolanie >= 99999){
jednorazowe_wywolanie = 2;
};
/////////////////////////////////////////////////////////////////////////
/////////////////////////////zatruwanie npc//////////////////////////////
/////////////////////////////////////////////////////////////////////////
if (trucie >= 1){
if (licznik_trucia >= 8){
licznik_trucia = 0;
if (zatruty1.aivar[49] > 0 ){
if (zatruty1.attribute[atr_hitpoints] > 10){
zatruty1.attribute[ATR_HITPOINTS] = zatruty1.attribute[ATR_HITPOINTS]-3;
zatruty1.aivar[49]=zatruty1.aivar[49]-1;
};
};
if (zatruty2.aivar[49] > 0 ){
if (zatruty2.attribute[atr_hitpoints] > 10){
zatruty2.attribute[ATR_HITPOINTS] = zatruty2.attribute[ATR_HITPOINTS]-3;
zatruty2.aivar[49]=zatruty2.aivar[49]-1;
};
};
if (zatruty3.aivar[49] > 0 ){
if (zatruty3.attribute[atr_hitpoints] > 10){
zatruty3.attribute[ATR_HITPOINTS] = zatruty3.attribute[ATR_HITPOINTS]-3;
zatruty3.aivar[49]=zatruty3.aivar[49]-1;
};
};
if (zatruty4.aivar[49] > 0 ){
if (zatruty4.attribute[atr_hitpoints] > 10){
zatruty4.attribute[ATR_HITPOINTS] = zatruty4.attribute[ATR_HITPOINTS]-3;
zatruty4.aivar[49]=zatruty4.aivar[49]-1;
};
};
if (zatruty5.aivar[49] > 0 ){
if (zatruty5.attribute[atr_hitpoints] > 10){
zatruty5.attribute[ATR_HITPOINTS] = zatruty5.attribute[ATR_HITPOINTS]-3;
zatruty5.aivar[49]=zatruty5.aivar[49]-1;
};
};
if (zatruty6.aivar[49] > 0 ){
if (zatruty6.attribute[atr_hitpoints] > 10){
zatruty6.attribute[ATR_HITPOINTS] = zatruty6.attribute[ATR_HITPOINTS]-3;
zatruty6.aivar[49]=zatruty6.aivar[49]-1;
};
};
if (zatruty7.aivar[49] > 0 ){
if (zatruty7.attribute[atr_hitpoints] > 10){
zatruty7.attribute[ATR_HITPOINTS] = zatruty7.attribute[ATR_HITPOINTS]-3;
zatruty7.aivar[49]=zatruty7.aivar[49]-1;
};
};
if (zatruty8.aivar[49] > 0 ){
if (zatruty8.attribute[atr_hitpoints] > 10){
zatruty8.attribute[ATR_HITPOINTS] = zatruty8.attribute[ATR_HITPOINTS]-3;
zatruty8.aivar[49]=zatruty8.aivar[49]-1;
};
};
if (zatruty9.aivar[49] > 0 ){
if (zatruty9.attribute[atr_hitpoints] > 10){
zatruty9.attribute[ATR_HITPOINTS] = zatruty9.attribute[ATR_HITPOINTS]-3;
zatruty9.aivar[49]=zatruty9.aivar[49]-1;
};
};
if (zatruty10.aivar[49] > 0 ){
if (zatruty10.attribute[atr_hitpoints] > 10){
zatruty10.attribute[ATR_HITPOINTS] = zatruty10.attribute[ATR_HITPOINTS]-3;
zatruty10.aivar[49]=zatruty10.aivar[49]-1;
};
};
if (zatruty11.aivar[49] > 0 ){
if (zatruty11.attribute[atr_hitpoints] > 10){
zatruty11.attribute[ATR_HITPOINTS] = zatruty11.attribute[ATR_HITPOINTS]-3;
zatruty11.aivar[49]=zatruty11.aivar[49]-1;
};
};
if (zatruty12.aivar[49] > 0 ){
if (zatruty12.attribute[atr_hitpoints] > 10){
zatruty12.attribute[ATR_HITPOINTS] = zatruty12.attribute[ATR_HITPOINTS]-3;
zatruty12.aivar[49]=zatruty12.aivar[49]-1;
};
};
if (zatruty13.aivar[49] > 0 ){
if (zatruty13.attribute[atr_hitpoints] > 10){
zatruty13.attribute[ATR_HITPOINTS] = zatruty13.attribute[ATR_HITPOINTS]-3;
zatruty13.aivar[49]=zatruty13.aivar[49]-1;
};
};
if (zatruty14.aivar[49] > 0 ){
if (zatruty14.attribute[atr_hitpoints] > 10){
zatruty14.attribute[ATR_HITPOINTS] = zatruty14.attribute[ATR_HITPOINTS]-3;
zatruty14.aivar[49]=zatruty14.aivar[49]-1;
};
};
if (zatruty15.aivar[49] > 0 ){
if (zatruty15.attribute[atr_hitpoints] > 10){
zatruty15.attribute[ATR_HITPOINTS] = zatruty15.attribute[ATR_HITPOINTS]-3;
zatruty15.aivar[49]=zatruty15.aivar[49]-1;
};
};
if (zatruty16.aivar[49] > 0 ){
if (zatruty16.attribute[atr_hitpoints] > 10){
zatruty16.attribute[ATR_HITPOINTS] = zatruty16.attribute[ATR_HITPOINTS]-3;
zatruty16.aivar[49]=zatruty16.aivar[49]-1;
};
};
if (zatruty17.aivar[49] > 0 ){
if (zatruty17.attribute[atr_hitpoints] > 10){
zatruty17.attribute[ATR_HITPOINTS] = zatruty17.attribute[ATR_HITPOINTS]-3;
zatruty17.aivar[49]=zatruty17.aivar[49]-1;
};
};
if (zatruty18.aivar[49] > 0 ){
if (zatruty18.attribute[atr_hitpoints] > 10){
zatruty18.attribute[ATR_HITPOINTS] = zatruty18.attribute[ATR_HITPOINTS]-3;
zatruty18.aivar[49]=zatruty18.aivar[49]-1;
};
};
if (zatruty19.aivar[49] > 0 ){
if (zatruty19.attribute[atr_hitpoints] > 10){
zatruty19.attribute[ATR_HITPOINTS] = zatruty19.attribute[ATR_HITPOINTS]-3;
zatruty19.aivar[49]=zatruty19.aivar[49]-1;
};
};
if (zatruty20.aivar[49] > 0 ){
if (zatruty20.attribute[atr_hitpoints] > 10){
zatruty20.attribute[ATR_HITPOINTS] = zatruty20.attribute[ATR_HITPOINTS]-3;
zatruty20.aivar[49]=zatruty20.aivar[49]-1;
};
};
};
};
if (naliczanie_on == 1){
licznik_trucia += 1;
};
/////////////////////////////////////////////////////////////////////////
/////////////////////////////uniwersalny mainflag//////////////////////
/////////////////////////////////////////////////////////////////////////
if (miecz_on == 1){
item_kat_nf_ff = item_kat_ff;
item_super_flag = item_axe;
}
else{
item_kat_nf_ff = item_kat_nf;
item_super_flag = item_2hd_axe;
};
//////////////////////////////////////////////////////////////////////////
///////////////////////////////skilowanie///////////////////////////////
/////////////////////////////////////////////////////////////////////////////
if (skil_1h_miecz >= 120){
B_RaiseFightTalent (hero, NPC_TALENT_1H, 1);
Lerne_Einhand = TRUE;
Snd_Play("Levelup");
skil_1h_miecz = 0;
PrintScreen ("Bonus do walki bronią 1-ręczną +1", -1,-1,"font_old_20_white.tga",3);
};
////////////////////////////////////////////////////////////////////////
////////////////////////////wyciąganie duali i wyświetlanie broni////////
/////////////////////////////////////////////////////////////////////////
qkey = mem_keystate(key_Lshift);
if (qkey == key_pressed){
if (miecz_on_on >= 2){
Mdl_ApplyOverlayMds (hero,"Hum_Dual.mds");
AI_ReadyMeleeWeapon(hero);
koniec = 1;
Print ("Wyciągłeś broń");
};
}
else
if (Npc_HasEquippedMeleeWeapon(hero)){
bron1 = Npc_GetEquippedMeleeWeapon(hero);
koniec = 0;
PrintScreen (bron1.name, 80,88,"font_old_20_white.tga",1);
};
if (Npc_HasEquippedRangedWeapon(hero)){
if (koniec == 0){
bron2 = Npc_GetEquippedRangedWeapon(hero);
PrintScreen (bron2.name, 80,91,"font_old_20_white.tga",1);
};
};
////////////////////////////////////////////////////////////////
////////////////////////ustawienie pasków na ekranie/////////
///////////////////////////////////////////////////////////////////
if (jednorazowe_wywolanie == 1){
// ----- an die Bars rankommen -----
MEM_InitGlobalInst ();
var oCViewStatusBar bar_hp; bar_hp = MEM_PtrToInst (MEM_GAME.hpBar);
var oCViewStatusBar bar_mana; bar_mana = MEM_PtrToInst (MEM_GAME.manaBar);
// ----- Bars an die alte Position -----
bar_hp.zCView_vposx = hp_vposx;
bar_hp.zCView_vposy = hp_vposy;
bar_mana.zCView_vposx = mana_vposx;
bar_mana.zCView_vposy = mana_vposy;
};
////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////regeneracja///////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////
if (regeneracja >= 1){
licznik += 1;
if (hero.attribute[atr_hitpoints] == 1){
hero.attribute[atr_hitpoints] = 1;
}
else
if hero.attribute[ATR_HITPOINTS] < hero.attribute[ATR_HITPOINTS_max]{
if (licznik >= 8){
hero.attribute[ATR_HITPOINTS] = hero.attribute[ATR_HITPOINTS] + 1;
licznik = 0;
if (regeneracja >= 2){
hero.attribute[ATR_HITPOINTS] = hero.attribute[ATR_HITPOINTS] + 2;
if (regeneracja >= 3){
hero.attribute[ATR_HITPOINTS] = hero.attribute[ATR_HITPOINTS] + 3;
if (hero.attribute[atr_strength] >= 150){
hero.attribute[ATR_HITPOINTS] = hero.attribute[ATR_HITPOINTS] + 4;
};
};
};
};
};
if (hero.attribute[ATR_HITPOINTS] > hero.attribute[ATR_HITPOINTS_max]){
hero.attribute[ATR_HITPOINTS] = hero.attribute[ATR_HITPOINTS_max];
};
};
////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////regeneracja many///////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////
if (regeneracjamana >= 1){
licznikmana += 1;
if hero.attribute[ATR_mana] < hero.attribute[ATR_mana_max]{
if (licznikmana >= 8){
hero.attribute[ATR_mana] = hero.attribute[ATR_mana] + 1;
licznikmana = 0;
if (regeneracjamana >= 2){
hero.attribute[ATR_mana] = hero.attribute[ATR_mana] + 1;
if (regeneracjamana >= 3){
hero.attribute[ATR_mana] = hero.attribute[ATR_mana] + 2;
};
};
};
};
if (hero.attribute[ATR_mana] >= hero.attribute[ATR_mana_max]){
hero.attribute[ATR_mana] = hero.attribute[ATR_mana_max];
};
};
//////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////wyświetlanie hp i many/////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////
hp = ConcatStrings (IntToString(hero.attribute[atr_hitpoints]), "/");
hp_max = ConcatStrings (IntToString(hero.attribute[atr_hitpoints_max]), "");
hp_finish = ConcatStrings (hp, hp_max);
PrintScreen (hp_finish, 2, 91, FONT_ScreenSmall, 2);
ma = ConcatStrings (IntToString(hero.attribute[atr_mana]), "/");
ma_max = ConcatStrings (IntToString(hero.attribute[atr_mana_max]), "");
ma_finish = ConcatStrings (ma, ma_max);
PrintScreen (ma_finish, 2, 97, FONT_ScreenSmall, 2);
//////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////Reputacja/////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////
wyswietlanie_rep_orkowie = ConcatStrings ("Reputacja u Orków: ",intToString(rep_orkowie));
wyswietlanie_rep_Rebelia = ConcatStrings ("Reputacja u Rebeliantów: ",intToString(rep_rebelia));
wyswietlanie_rep_assasyn = ConcatStrings ("Reputacja u Assasynów: ",intToString(rep_assasyn));
wyswietlanie_rep_MO = ConcatStrings ("Reputacja u Magów Ognia: ",intToString(rep_MO));
wyswietlanie_rep_MW = ConcatStrings ("Reputacja u Magów Wody: ",intToString(rep_MW));
wyswietlanie_rep_nekro = ConcatStrings ("Reputacja u Nekromantów: ",intToString(rep_nekro));
wyswietlanie_rep_mys = ConcatStrings ("Reputacja u Myśliwych: ",intToString(rep_mys));
wyswietlanie_rep_druid = ConcatStrings ("Reputacja u Druidów: ",intToString(rep_druid));
wyswietlanie_rep_deze = ConcatStrings ("Reputacja u Dezerterów: ",intToString(rep_deze));
R_key = mem_keystate(key_r);
if (r_key == key_pressed)
{
var int nDocID;
nDocID = Doc_Create();
Doc_SetPages(nDocID,1);
Doc_SetPage(nDocID,0,"letters.TGA",0);
Doc_SetFont(nDocID,0,FONT_BookHeadline);
Doc_SetMargins(nDocID,-1,50,50,50,50,1);
Doc_PrintLine(nDocID,0,"Moja reputacja");
Doc_SetFont(nDocID,0,FONT_Book);
Doc_PrintLine(nDocID,0,"");
Doc_PrintLines(nDocID,0, wyswietlanie_rep_orkowie);
Doc_PrintLines(nDocID,0, "");
Doc_PrintLines(nDocID,0, wyswietlanie_rep_Rebelia);
Doc_PrintLines(nDocID,0, "");
Doc_PrintLines(nDocID,0, wyswietlanie_rep_assasyn);
Doc_PrintLines(nDocID,0, "");
Doc_PrintLines(nDocID,0, wyswietlanie_rep_deze);
Doc_PrintLines(nDocID,0, "");
Doc_PrintLines(nDocID,0, wyswietlanie_rep_mys);
Doc_PrintLines(nDocID,0, "");
Doc_PrintLines(nDocID,0, wyswietlanie_rep_MW);
Doc_PrintLines(nDocID,0, "");
Doc_PrintLines(nDocID,0, wyswietlanie_rep_MO);
Doc_PrintLines(nDocID,0, "");
Doc_PrintLines(nDocID,0, wyswietlanie_rep_nekro);
Doc_PrintLines(nDocID,0, "");
Doc_PrintLines(nDocID,0, wyswietlanie_rep_druid);
Doc_Show(nDocID);
};
//////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////koniec///////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////////////////
};