Czy wiesz, że... możesz podsyłać newsy, artykuły, pliki i zdjęcia?
Strona główna forum Szukaj Rejestracja
Witaj, nieznajomy!
Poprzedni 1 Następny
Postów: 294 Dołączył: 2011-07-27
#
Mam pytanie, w jaki sposób można by usunąć marker wejścia do domu aktywny podczas misji złodzieja? Przeszkadza mi on przy jednym budynku i chciałbym żeby w tym jednym miejscu nigdy się nie pojawiał. Czy zwykłe 0395 załatwiło by sprawę?
Postów: 628 Dołączył: 2009-01-22
#
Najlepiej byłoby usunąć go z modelu tego konkretnego budynku.

___________________
Moderator
http://i.imgur.com/Abvv63y
Śledź mój kanał Twitter by być na bieżąco ze wszystkimi aktualizacjami moich modów!
Postów: 294 Dołączył: 2011-07-27
#
Wolałbym go usunąć w inny sposób, bo ten budynek występuje w kilku miejscach na mapie, a marker przeszkadza mi tylko w jednym miejscu. Najlepiej jakby dało się zrobić coś takiego w CLEO.
Postów: 294 Dołączył: 2011-07-27
#
To może jeszcze zapytam czy za pomocą CLEO można usunąć taki normalny marker z sekcji ENEX w IPL ? Po prostu chciałbym usunąć kilka markerów bez edycji oryginalnych plików gry.
Postów: 628 Dołączył: 2009-01-22
#
Te markery są takie same i mam jeden pomysł na to, by je zlokalizować. Nie wiem jednak czy da się je w ten sposób usunąć.

___________________
Moderator
http://i.imgur.com/Abvv63y
Śledź mój kanał Twitter by być na bieżąco ze wszystkimi aktualizacjami moich modów!
Postów: 294 Dołączył: 2011-07-27
#
To jeżeli nie da się ich usunąć, to może dało by się je chociaż przesunąć w osi Z tak żeby były pod mapą.
Postów: 628 Dołączył: 2009-01-22
#
Tak, to na pewno byłoby prostsze. Później spróbuję coś z tym zrobić.

___________________
Moderator
http://i.imgur.com/Abvv63y
Śledź mój kanał Twitter by być na bieżąco ze wszystkimi aktualizacjami moich modów!
Postów: 294 Dołączył: 2011-07-27
#
I jak, jest na to jakiś sposób?
Postów: 294 Dołączył: 2011-07-27
#
Chciałbym odświeżyć ten temat, i przy okazji zapytać czy może istnieje możliwość, aby marker z sekcji enex w ipl był aktywowany/dezaktywowany np. za pomocą jakiegoś klawisza?
Postów: 628 Dołączył: 2009-01-22
#
Nie testowałem, ta funkcja powinna usunąć enexa przy podanych koordynatach:

Kod:
:REMOVE_ENTRY_EXIT_AT_COORDS
0A9F: 3@ = current_thread_pointer
3@ += 0x3C
0AA7: call_function 0x43F4B0 num_params 3 pop 3 -1 2@ 3@ 4@ // CEntryExitManager::FindNearestEntryExit(CVector2D  const&, float, int)

if 
NOT 4@ == -1
then
    
0AA5: call 0x43FD50 num_params 1 pop 1 4@ // CEntryExitManager::DeleteOne(int)

end
0AB2: ret 0


Użycie:
Kod:
0AB1: call_scm_func @REMOVE_ENTRY_EXIT_AT_COORDS 3 coords 0.0 0.0 radius 1.5



Lepiej używać tego ostrożnie, bo jeśli to enex stworzony przez IPL to zniknie z save'a na dobre!

___________________
Moderator
http://i.imgur.com/Abvv63y
Śledź mój kanał Twitter by być na bieżąco ze wszystkimi aktualizacjami moich modów!
Postów: 294 Dołączył: 2011-07-27
#
Jak zwykle wszystko działa jak trzeba :D

Silent napisał(a):
Lepiej używać tego ostrożnie, bo jeśli to enex stworzony przez IPL to zniknie z save'a na dobre!


Mam zamiar usunąć kilka markerów z nieużywanych interiorów, które nie mają swoich odpowiedników wejściowych przez co ich nie widać, ale jak się na takiego wejdzie to gra przenosi gracza w to samo miejsce w którym taki marker stoi.

A mam jeszcze pytanie, czy podobnym sposobem dało by się przesunąć marker?

I czy dało by się zrobić tak żeby z jednego miejsca usunąć oryginalny marker z gry, ale żeby w tym samym miejscu został marker postawiony przeze mnie w pliku ipl?
Postów: 628 Dołączył: 2009-01-22
#
To drugie - raczej nie. Musisz zadowolić się małym promieniem sprawdzania i ustawianiem markerów blisko.

To pierwsze:

Kod:
:MOVE_ENTRY_EXIT_TO_COORDS
0A9F: 9@ = current_thread_pointer
9@ += 0x3C
0AA7: call_function 0x43F4B0 num_params 3 pop 3 -1 2@ 9@ 10@ // CEntryExitManager::FindNearestEntryExit(CVector2D  const&, float, int)

if 
NOT 10@ == -1
then
    
0A8D: 11@ = read_memory 0x43EF02 size 4 virtual_protect 0
    0A8D: 11@ = read_memory 11@ size 4 virtual_protect 0  // CEntryExitManager::mp_poolEntryExits

    0A8D: 11@ = read_memory 11@ size 4 virtual_protect 0  // CPool.m_pSlots

    10@ *= 60        // sizeof(CEntryExit)

    005A: 11@ += 10@

    5@ += 1.0

    6@ *= 0.017453292519943295769236907684886       // Stopnie na radiany (Sanny jakoś utnie ten ułamek)


    7@ *= 0.5
    8@ *= 0.5

    0087: 12@ = 3@
    0087: 13@ = 4@
    0087: 14@ = 3@
    0087: 15@ = 4@

    0063: 12@ -= 7@
    005B: 13@ += 8@
    005B: 14@ += 7@
    0063: 15@ -= 8@

    11@ += 8        // CEntryExit.Entry.x1

    0A8C: write_memory 11@ size 4 value 12@ virtual_protect 0
    11@ += 4        // CEntryExit.Entry.y1

    0A8C: write_memory 11@ size 4 value 13@ virtual_protect 0
    11@ += 4        // CEntryExit.Entry.x2

    0A8C: write_memory 11@ size 4 value 14@ virtual_protect 0
    11@ += 4        // CEntryExit.Entry.y2

    0A8C: write_memory 11@ size 4 value 15@ virtual_protect 0

    11@ += 4        // CEntryExit.EntryZ

    0A8C: write_memory 11@ size 4 value 5@ virtual_protect 0

    11@ += 4        // CEntryExit.EntryHeading

    0A8C: write_memory 11@ size 4 value 6@ virtual_protect 0
end
0AB2: ret 0


Kod:
0AB1: call_scm_func @MOVE_ENTRY_EXIT_TO_COORDS 9 from_coords 0.0 0.0 radius 1.5 to_coords 0.0 0.0 0.0 heading 0.0 x_width 0.0 y_width 0.0


Kolejność parametrów to_coords jest taka jak w IPL - X, Y, Z, rotacja, szerokość X, szerokość Y

Mogłem (jak zwykle) pomylić koordynaty wyjścia z koordynatami wejścia. Daj znać jeśli tak jest.

___________________
Moderator
http://i.imgur.com/Abvv63y
Śledź mój kanał Twitter by być na bieżąco ze wszystkimi aktualizacjami moich modów!
Postów: 294 Dołączył: 2011-07-27
#
W tym kodzie coś jest nie tak, bo gra się wyłącza pod koniec ładowania. Ale przyszedł mi do głowy jeszcze jeden pomysł, czy dało by się do tego pierwszego kodu usuwającego marker dodać sprawdzanie nazwy markera z ipl. Dzięki temu mój marker (rozpoznany po nazwie z ipl) nie zostałby usunięty, a inny który byłby nawet w tym samym miejscu zostałby usunięty, bo miałby inną nazwę niż podana w warunku.
Postów: 628 Dołączył: 2009-01-22
#
Szukanie po nazwie oraz po koordynatach (bo większość enexów ma 1 nazwę dla 2 enexów) byłoby już zbyt irytujące. A kod sprawdzę jutro albo wtedy, gdy będę w stanie go sprawdzić.

___________________
Moderator
http://i.imgur.com/Abvv63y
Śledź mój kanał Twitter by być na bieżąco ze wszystkimi aktualizacjami moich modów!
Postów: 628 Dołączył: 2009-01-22
#
Poprawiłem kod. Po prostu przejechałem się z wielkością CEntryExit.

___________________
Moderator
http://i.imgur.com/Abvv63y
Śledź mój kanał Twitter by być na bieżąco ze wszystkimi aktualizacjami moich modów!
Poprzedni 1 Następny
Zaloguj się lub zarejestruj się, żeby pisać na forum.
Created & Powered by MakG