Zadania (napis) 10202 36

O temacie

Autor Bogdan Zwei

Zaczęty 12.07.2012 roku

Wyświetleń 10202

Odpowiedzi 36

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.

Bogdan Zwei

Zadania (napis)
#20 2012-07-13, 08:29(Ostatnia zmiana: 2012-07-13, 08:30)
Poprzez wypowiedź Lehony, zrozumiałem, że muszę przypisać jedną zmienną do KAŻDEGO zadania, tylko jeden problem, nie wiem jak to zrobić...

(i nie ma to być quest = TOPIC_Addon_BaltramSkipTrade tylko jakoś inaczej, którego sposobu nie znam ;/)

@Avallah, spokojnie, nie ignoruję Cię. W ostateczności użyję twojego sposobu. Może i długo zajmie, no ale. :)
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

gothic1210
  • Gość
Poprzez wypowiedź Lehony, zrozumiałem, że muszę przypisać jedną zmienną do KAŻDEGO zadania, tylko jeden problem, nie wiem jak to zrobić...

(i nie ma to być quest = TOPIC_Addon_BaltramSkipTrade tylko jakoś inaczej, którego sposobu nie znam ;/)

@Avallah, spokojnie, nie ignoruję Cię. W ostateczności użyję twojego sposobu. Może i długo zajmie, no ale. :)
Chcesz mi powiedzieć, że szybciej napiszesz zmienną dla wszystkich zadań w grze niż podmienisz jakiś tam kawałek kodu  w plikach?
Cytuj
Może i długo zajmie, no ale. :)
Notepad++ się kłania
 

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
Nie korzystam z Notepad ++.
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator

inż. Avallach
Administrator

Zadania (napis)
#23 2012-07-13, 09:33(Ostatnia zmiana: 2012-07-13, 09:39)
@Avallah, spokojnie, nie ignoruję Cię. W ostateczności użyję twojego sposobu. Może i długo zajmie, no ale. :)
:facepalm:
(nie ręcznie, jakimś programem)
Chodziło mi dokładnie o to co napisał gothic1210, z tym że nie podałem konkretnego programu żebyś sobie wybrał ten którego normalnie używasz. Trwa to parę sekund.

Rób jak chcesz, ale z góry ci mówię że nawet jak doprowadzisz funkcję Lehony do działania, nic ci to nie da. Jest ona dobra, po prostu służy do czego innego (na początku dość niejasno opisywałeś swój problem i stąd zaszło nieporozumienie).

//edit: a korzystasz z Gothic Sourcera albo Total Commandera, albo czegokolwiek co potrafi zamieniać tekst w plikach? W ostateczności Notepad++ jest darmowy i naprawdę ma masakrycznie przydatne funkcje, zarówno do pisania kodu, jak i operowania na jego dużych blokach.

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.

Bogdan Zwei

Zadania (napis)
#24 2012-07-13, 09:49(Ostatnia zmiana: 2012-07-13, 10:16)
@Avallah, spokojnie, nie ignoruję Cię. W ostateczności użyję twojego sposobu. Może i długo zajmie, no ale. :)
:facepalm:
(nie ręcznie, jakimś programem)
Chodziło mi dokładnie o to co napisał gothic1210, z tym że nie podałem konkretnego programu żebyś sobie wybrał ten którego normalnie używasz. Trwa to parę sekund.

Rób jak chcesz, ale z góry ci mówię że nawet jak doprowadzisz funkcję Lehony do działania, nic ci to nie da. Jest ona dobra, po prostu służy do czego innego (na początku dość niejasno opisywałeś swój problem i stąd zaszło nieporozumienie).

//edit: a korzystasz z Gothic Sourcera albo Total Commandera, albo czegokolwiek co potrafi zamieniać tekst w plikach? W ostateczności Notepad++ jest darmowy i naprawdę ma masakrycznie przydatne funkcje, zarówno do pisania kodu, jak i operowania na jego dużych blokach.

Aa, sorry, nie zauważyłem tego, że programem pisałeś.

A z tego co pisałeś na początku, zrozumiałem, że muszę zamienić wszystkie Log_SetTopicStatus na -||- _2. Więc nie będę dostawał logów do dziennika, bo tam nie ma Log_AddEntry. Będę musiał to tam dopisać.

Jeszcze nic nie dodałem ani nie zacząłem dodawać i wyskakują mi takie błędy. I dołączam jeszcze zSpy.
Oczywiście pomyliłem formaty :facepalm:
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

Adanos

Adanos

Administrator
Szara eminencja
posty5204
Propsy3870
ProfesjaProgramista
  • Administrator
  • Szara eminencja

Adanos
Administrator

Zadania (napis)
#25 2012-07-13, 11:35(Ostatnia zmiana: 2012-07-13, 11:37)
func void B_LogEntry (var string topic, var string entry)
{
        Log_AddEntry    (topic, entry);

        PrintScreen             (PRINT_NewLogEntry, -1, YPOS_LOGENTRY, FONT_ScreenSmall, 2);
        Snd_Play                ("LogEntry");

        var int q;
        if (q == LOG_SUCCESS)
        {
                PrintScreen             ("Tratata", -1, 84, FONT_ScreenSmall, 2);
        };
};

Ja bym po prostu napisał tak :D
func void B_LogEntryIfSuccess (var string topic, var string entry, var int q)
{
   B_LogEntry (topic, entry);

   if (q == LOG_SUCCESS)
   {
      PrintScreen("Tratata", -1, 84, FONT_ScreenSmall, 2);
   };
};

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
Ale wtedy jest błąd w linii 189 jak już pisałem. (w innym pliku)
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

RafalBudzis

RafalBudzis

Użytkownicy
posty1967
Propsy808
ProfesjaSkrypter
  • Użytkownicy
A usunąłeś tamten dodatkowy parametr ?

Lehona

Lehona

Użytkownicy
posty196
Propsy190
  • Użytkownicy

Lehona

Zadania (napis)
#28 2012-07-13, 14:22(Ostatnia zmiana: 2012-07-13, 14:22)
If you want to you can even manually change the call of Log_SetTopicStatus() to Log_SetTopicStatus_2() using the scripts (that is useful if other people are going to use your scripts) as we have done in LeGo to replace PrintScreen() because it's poorly coded in the engine:
// This code replaces every call to PrintScreen() with a call to PrintScreen_Ext(), a script function
func void Print_FixPS() {
    var int test; test = MEM_GetFuncOffset(PrintScreen_Ext);
    var zCPar_Symbol PS; PS = _^(MEM_ReadIntArray(contentSymbolTableAddress, MEM_GetFuncID(PrintScreen)));

    Call_Begin(0);
        Call_IntParam(_@(test));
        Call__thiscall(_@(ContentParserAddress), zCParser__DoStack);

    PS.content = Call_Close();
};

In this case you would either have to create your own external symbol to call the actual Log_SetTopicStatus() or just use a script-function duplicating the Log_SetTopicStatus()-functionality (just use the script for Log_GetTopicStatus() I have posted above and instead of reading the status, set it).
 
Unless specified otherwise, my posts are always about Gothic 2 Night of the Raven.

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.

Bogdan Zwei

Zadania (napis)
#29 2012-07-13, 20:47(Ostatnia zmiana: 2012-07-14, 10:14)
Uczynię to, jak kolega mi pośle OldWorld, bo mój się roz... walił. :(

I will do this when my friend send me his OldWorld, because my is "destryed". :(
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.

Bogdan Zwei

Zadania (napis)
#30 2012-07-14, 10:24(Ostatnia zmiana: 2012-07-14, 13:33)
We wszystkich skryptach zamień "Log_SetTopicStatus" na "Log_SetTopicStatus_2". Dodaj w skryptach (możliwie wcześnie) funkcję:
func void Log_SetTopicStatus_2 (var string missionName, var int newStatus)
{
var string message;
if (newStatus == LOG_SUCCESS) { message = "Misja zakończona powodzeniem!"; };
if (newStatus == LOG_FAILED) { message = "Misja niezaliczona!"; };

if (message)
{
message = ConcatStrings("Zadanie: ", ConcatStrings (missionName, message)); //jak chcesz, odkomentuj
PrintScreen (message, -1, YPOS_LOGENTRY, FONT_ScreenSmall, 2);
};

Log_SetTopicStatus (missionName, newStatus);
};

Po prostu podmieniłem stary Log_SetTopicStatus na ten, który napisałeś. Nie działa, nic się nie wyświetla.

Kurde, przepraszam za ponowne napisanie komentarza pod moim. :(
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

RafalBudzis

RafalBudzis

Użytkownicy
posty1967
Propsy808
ProfesjaSkrypter
  • Użytkownicy
spróbuj zrobić tak

       var string message;
        if (newStatus == LOG_SUCCESS)   { message = "Misja zakończona powodzeniem!"; };
        if (newStatus == LOG_FAILED)    { message = "Misja niezaliczona!"; };

        if (message != "")

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator

inż. Avallach
Administrator

Zadania (napis)
#32 2012-07-14, 12:48(Ostatnia zmiana: 2012-07-14, 13:02)
Po prostu podmieniłem stary B_SetTopicStatus na ten, który napisałeś. Nie działa, nic się nie wyświetla.
Polaking, ja nie napisałem nowego B_SetTopicStatus, tylko Log_SetTopicStatus. To co innego. Funkcja B_SetTopicStatus nie istnieje w oryginalnym Gothicu i nie jest nigdzie wywoływana, nic dziwnego że nic się nie dzieje. Działać będzie tylko jeśli zrobisz tak jak pisałem od początku. Funkcji Log_SetTopicStatus nie da się łatwo podmienić, bo jest w silniku (czyli da za pomocą EngineHooks z LeGo, ale to trudniejsze), dlatego trzeba sprawić żeby zamiast niej najpierw była wywoływana skryptowa Log_SetTopicStatus_2.

To co napisał RafałBudzis może być dodatkowo poprawne, ale nie jestem pewien, dawno nie pisałem w Daedalusie. W JScript.NET skorzystałbym ze !String.IsNullOrEmpty albo napisał warunek if (message && message != "") :D

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.

Bogdan Zwei

Zadania (napis)
#33 2012-07-14, 13:33(Ostatnia zmiana: 2012-07-14, 13:37)
Po prostu podmieniłem stary B_SetTopicStatus na ten, który napisałeś. Nie działa, nic się nie wyświetla.
Polaking, ja nie napisałem nowego B_SetTopicStatus, tylko Log_SetTopicStatus. To co innego. Funkcja B_SetTopicStatus nie istnieje w oryginalnym Gothicu i nie jest nigdzie wywoływana, nic dziwnego że nic się nie dzieje. Działać będzie tylko jeśli zrobisz tak jak pisałem od początku. Funkcji Log_SetTopicStatus nie da się łatwo podmienić, bo jest w silniku (czyli da za pomocą EngineHooks z LeGo, ale to trudniejsze), dlatego trzeba sprawić żeby zamiast niej najpierw była wywoływana skryptowa Log_SetTopicStatus_2.

To co napisał RafałBudzis może być dodatkowo poprawne, ale nie jestem pewien, dawno nie pisałem w Daedalusie. W JScript.NET skorzystałbym ze !String.IsNullOrEmpty albo napisał warunek if (message && message != "") :D

Przejęzyczyłem się, miałem na myśli Log_... a nie B_... . Ale i tak nie działa. ;/

Aa, to od Rav#msg1044650a zaraz sprawdzę. :)
(v czyt. fał ^^ )

|Edit: NEIN! Nie działa. :(
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
Testował ktokolwiek, czy ten skrypt działa? Tzn., czy ja czegoś źle nie zrobiłem? Bo próbowałem dzisiaj ponownie i dodawałem kilka swoich wymysłów, ale nie działa.
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

Bogdan Zwei

Bogdan Zwei

Użytkownicy
Wulgarny skurwiel pierdolony.
posty1864
Propsy541
Profesjabrak
  • Użytkownicy
  • Wulgarny skurwiel pierdolony.
TEMAT MOŻNA ZAMKNĄĆ. UDAŁO MI SIĘ TO ZROBIĆ UŻYWAJĄC B_GetTopicStatus OD LEHONA'Y. DZIĘKUJĘ WSZYSTKIM ZA POMOC!!!


TOPIC CAN BE CLOSED. I DID IT, IT WORKS NOW. I JUST NEEDED TO USE B_GetTopicStatus FROM YOU, LEHONA. THANK YOU VERY MUCH!!!
 
:ok: zachęca do dalszej pomocy. Nie zapominaj o tym!

Prywatne wiadomości typu "Ej, pomocy" kasuję od razu. Od tego jest forum, a nie PW.

To me, defeat in anything is merely temporary, and its punishment is but an urge for me to greater effort to achieve my goal. Defeat simply tells me that something is wrong in my doing; it is a path leading to success and truth.

In order to realize our true self we must be willing to live without being dependent upon the opinion of others.

EdekSumo

EdekSumo

Wyspa Khorinis
posty1739
Propsy925
ProfesjaLvl designer
  • Wyspa Khorinis

EdekSumo
Wyspa Khorinis

Zadania (napis)
#36 2012-10-14, 11:49(Ostatnia zmiana: 2012-10-14, 13:56)
Dobrze to przetestuj bo też miałem to używać ale po jakimś czasie jak chciało zrobić wpis w dziennik wywalało z asscces violation.

edit otwieram na życzenie polakinga
 


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