Czy wiesz, że... na forum możesz uzyskać pomoc nt. modowania GTA?
Strona główna forum Szukaj Rejestracja
Witaj, nieznajomy!
Postów: 1004 Dołączył: 2009-01-20
#
W jednym modzie z nalazłem opcod, który powoduje że np. na samochód może padać światło, tak jak by ktoś np. latarką świecił na pojazd. Chciałem ten efekt ustawić w innym miejscu w swoim skrypcie ale za nic nie mogę sobie poradzić ze współrzędnymi. Jak ustawiam to albo światło leży na ziemi albo go w cale nie widać.
Kod:
06B1: 1@ = create_searchlight_at 830.844 -1849.4861 12.5592 radius 0.0 target 830.844 -1849.4861 12.5592 radius 10.0


Ktoś wie jak to powinno być prawidłowo ustawiano żeby było jak trzeba?
Postów: 1004 Dołączył: 2009-01-20
#
W zasadzie każdy samochód da się podmienić za inny samochód choć teoretycznie on był jeszcze do innego przystosowany. Z reguły wystarczy zmienić nazwy pojazdu. Np. chcesz podmienić za infernusa samochód od nazwie primo, choć on był oryginalnie przystosowany pod samochód o nazwie stratum to nazwę primo zmieniasz pod infernusa i podmieniasz. Powinno to wyglądać tak:

Kod:
primo.txd
primo.dff


zamieniasz na

Kod:
infernus.txd
infernus.dff


i gotowe. Przynajmniej tak się dało robić w gta sa nie wiem jak w 4 ale myślę że to powinno zadziałać. A to że wywaliło cię z gry to pewnie coś źle zrobiłeś. I przed podmianą nie zapomnij zrobić kopii zapasowych plików.
Postów: 1004 Dołączył: 2009-01-20
#
To forum nie popiera piractwa. Nie zdziwię się jak za chwile dostaniesz bana.
Postów: 1004 Dołączył: 2009-01-20
#
1. Jakim opcodem można wyłączyć możliwość wejść do budynków. I czy da się tak ustawić żeby np. do ammo i barów można było wejść a do sklepów z ciuchami nie?
2. Jaki jest opcod na natychmiastowe wyrzucenie graca z pojazdu? Kiedyś to na forum było podawana ale nigdzie tego nie mogę z najść?
Postów: 1004 Dołączył: 2009-01-20
#
Chyba cyfrowy. Jedno wiem na pewno że do tego musisz stworzyć 10 plików bmp o rozmiarach np. 80 na 120 i na każdej z nich napisać cyfry 0 do 9. Potem dodać to do pliku txd i potem to już zostaje napisanie odpowiednie scryptu w cleo ale w tym ci już nie pomogę bo to już wyższa filozofia.
Postów: 1004 Dołączył: 2009-01-20
#
Można powiedzieć że zrozumiałem o co z tymi nowymi pętlami chodzi ale jednego nadal nie mogę do końca zrozumieć. Jak je należy budować żeby np. pod czasz całej misji bez względu ile np. w czekpontów wejdzie aktor cały czasz było sprawdzane że np. aktor zginą. Żebym nie musiał za każdym razem tworzyć takiej pętli sprawdzającej. Co prawda po niżej w kodzie zrobiłem coś takiego ale nie do końca działa to tak jak powinno. Bowiem jak się wejdzie np. do pierwszego takiego czekpońta i pojawia się następny to można i tak wejść znowu do tego pierwszego, chociaż jak się nie wejdzie to też misje można wykonywać dalej.

Jeżeli ktoś by był taki miły i napisał gotowy przykład np. typu wchodzę do pierwszego czekpońta(zaczyna się misja) i potem do drugiego i trzeciego, a za każdym razem było by sprawdzane że aktor zginą to był bym wdzięczny.
Kod:
{$CLEO .cs}
0000: NOP

0247: request_model 400
Model.Load(#CELLPHONE)
03CF: load_wav 23000 as 3
038B: load_requested_models

048F: actor $PLAYER_ACTOR remove_weapons 
01EB: set_traffic_density_multiplier_to 0.1 
03DE: set_pedestrians_density_multiplier_to 0.0 
//010D: set_player $PLAYER_CHAR wanted_level_to 0

select_interior 0 
0860: link_actor $PLAYER_ACTOR to_interior 0 
Actor.PutAt($PLAYER_ACTOR, 2466.5825 -1687.6492 13.5154)
Actor.Angle($PLAYER_ACTOR) = 90.0

:start1
02A7: 1@ = create_icon_marker_and_sphere 23 at 2459.0408 -1687.2944 13.5418 radius 3.0

while true
  wait 0

  if
    00ED:   actor $PLAYER_ACTOR 0 near_point 2459.0408 -1687.2944 radius 1.0 1.0 on_foot
  then
  Player.CanMove($PLAYER_CHAR) = False
  fade 0 1500
  wait 1500
  08E7: disable_entrance_markers 1
  $ONMISSION = 1
  Marker.Disable(1@)
  03BC: 2@ = create_sphere_at 1764.8632 -2283.2903 -2.7649 radius 3.0
  018A: 3@ = create_checkpoint_at 1764.8632 -2283.2903 -2.7649
  00A1: put_actor $PLAYER_ACTOR at 2468.5623 -1689.1936 13.5154 
  Actor.Angle($PLAYER_ACTOR) = 260.0
  02EB: restore_camera_with_jumpcut 
  Player.CanMove($PLAYER_CHAR) = True
  wait 1500
  fade 1 1500
  break
  end
  end

while true
  wait 0
//sprawdza czy aktor zginoł
  :zginol1
  if
    0118: actor $PLAYER_ACTOR dead
  then
  00BA: show_text_styled GXT 'M_FAIL' time 5000 style 1
  Marker.Disable(1@)
  03BD: destroy_sphere 2@ // sfera
  0164: disable_marker 3@ // kwadracik na radarze
  08E7: disable_entrance_markers 0
  $ONMISSION = 0
  jump @start1
  break
  end 
  if
    00EC:   actor $PLAYER_ACTOR 0 near_point 1764.8632 -2283.2903 radius 1.5 1.5
  then
  03BD: destroy_sphere 2@ // sfera
  0164: disable_marker 3@ // kwadracik na radarze
  03D1: play_wav 3
  0729: AS_actor $PLAYER_ACTOR hold_cellphone 1
  wait 5000
  0729: AS_actor $PLAYER_ACTOR hold_cellphone 0
  wait 1000
  03BC: 2@ = create_sphere_at 1763.733 -2296.6899 -2.5939 radius 1.5
  018A: 3@ = create_checkpoint_at 1763.733 -2296.6899 -2.5939
  jump @zginol1
  break
  end   
  if
    00ED:   actor $PLAYER_ACTOR 0 near_point 1763.733 -2296.6899 radius 1.0 1.0 on_foot
  then
  Player.CanMove($PLAYER_CHAR) = False
  fade 0 1500
  wait 1500
  03BD: destroy_sphere 2@ // sfera
  0164: disable_marker 3@ // kwadracik na radarze
  00A1: put_actor $PLAYER_ACTOR at 1765.3459 -2273.4724 26.796
  Actor.Angle($PLAYER_ACTOR) = 180.0
  02EB: restore_camera_with_jumpcut 
  Player.CanMove($PLAYER_CHAR) = True
  wait 1500
  fade 1 1500
  jump @zginol1
  break
  end
  end
0A93: end_custom_thread
Postów: 1004 Dołączył: 2009-01-20
#
Może ktoś wytłumaczyć co ja mam wstawić w miejsce dla niespełnionego warunku w takiej pętli?
Kod:
if
  // warunek
then
  // akcja dla spelnionego warunku
else
  // akcja dla niespełnionego warunku
end


warunek - to jak rozumiem jakiś opcod sprawdzający czy np aktor został zabity czy tam nie

akcja dla spelnionego warunku - tuta jak rozumiem daje się opcody typu np. pokazujące napis że aktor zginoł

- akcja dla niespełnionego warunku - ale tutaj za nic nie mogę dojść co się powinno dawać.
Postów: 1004 Dołączył: 2009-01-20
#
W zasadzie kiedyś to czytałem ale nie bardzo rozumiem co oznaczają takie polecenia(czy jak to się zwie) jak "while true" czy "end" chociaż end z angielskiego po naszemu to zakończenie czy tam koniec czegoś, chyba. Dokładniej to mi chodzi o to czemu w kodzie jest raz jedno end a czasem nawet 3 end pod rząd. np
Kod:

jakiś kod
end

albo tak
Kod:

jakiś kod
end
 end
  end

przy tym właśnie się najbardziej gubię
Postów: 1004 Dołączył: 2009-01-20
#
Czy da się jakoś napisać pętle sprawdzającą żeby nie pisać za każdym razem po jakieś akcji że np. czy aktor zginą, czy został złapany przez policje albo czy samochód, który ma się jeździć przez całą akcje został rozwalany?
Postów: 1004 Dołączył: 2009-01-20
#
Ten program można pobrać z głównej strony producenta w wersji trial. Przynajmniej kiedyś jak go pobierałam to tam był. A co do zmodelerac(czy jak to tam się zwie) to ja niestety ale nic ci nie doradzę bo porostu nie umiem się nim obsługiwać. Może kto inny.
Postów: 1004 Dołączył: 2009-01-20
#
Taki otwór to najlepiej zrobić można za pomocą 3ds maxa i funkcji "Boolean".
Postów: 1004 Dołączył: 2009-01-20
#
Najpierw napisz w jakim programie chcesz to zrobić.
Postów: 1004 Dołączył: 2009-01-20
#
Chciałem sobie stworzyć szablon misji według tego poradnika na głównej stronie ale nie co inaczej. W szablonie misji czyli w tym pliku cm mam taki kod
Kod:
{$CLEO .cm}
thread 'szablon'

010D: set_player $PLAYER_CHAR wanted_level_to 5
0004: $timer1 =  180000  // 2:59    180000 
014E: set_timer_to $timer1 type  1
010D: set_player $PLAYER_CHAR wanted_level_to 3

:a5
wait 0
if
0118: actor $PLAYER_ACTOR dead 
jf @a5
00BA: show_text_styled GXT 'M_FAIL' time 5000 style 1
014F: stop_timer $timer1

0A93: end_custom_thread


a w pliku cs coś takiego
Kod:
0A94: start_custom_mission "sprawdzanie.cm"
przed tym opcodem jest taka mała kat scenka ale jej chyba nie muszę pokazywać. No więc po tej kat scence powinien włączyć się ten plik cm i zacząć działać kod czyli wyświetlanie czasu itd. Ale nic takiego się nie działa. Może ktoś wie dlaczego tak się dzieje?
Postów: 1004 Dołączył: 2009-01-20
#
Dokładnie to coś takiego będzie. Jak wejdziesz na obiekt to cię do góry zawiezie.
Kod:
{$CLEO .cs}
0000: NOP

select_interior 0 
0860: link_actor $PLAYER_ACTOR to_interior 0 
Actor.PutAt($PLAYER_ACTOR, 1494.4891 -1240.939 14.4925)
Actor.Angle($PLAYER_ACTOR) = 271.3505

$WINDA1 = Object.Create(988, 1491.4432, -1231.7, 12.4)
0453: set_object $WINDA1 XY_rotation 90.0 0.0 angle 0.0

:a1
wait 0
if
0471: actor $PLAYER_ACTOR near_object_in_rectangle $WINDA1 radius 4.0 4.0 flag 0
jf @a1
034E: move_object $WINDA1 to 1491.4432 -1231.7 97.652 speed 0.1 0.1 0.1 flag 1

:a2
wait 0
if
034E: move_object $WINDA1 to 1491.4432 -1231.7 97.652 speed 0.1 0.1 0.1 flag 0
jf @a2

0A93: end_custom_thread
Postów: 1004 Dołączył: 2009-01-20
#
W zasadzie to się trochę pospieszyłem z tym pytaniem. Zapomniałem że tego typu opcody sprawdzają czy goni nas policja. A ja potrzebowałem czy nie goni nas policja. Czyli był mi potrzebny prawie ten sam opcod ale z dopiskiem not. Ale i tak dzięki za pomoc.
Created & Powered by MakG