Czy wiesz, że... możesz podsyłać newsy, artykuły, pliki i zdjęcia?
Strona główna forum Szukaj Rejestracja
Witaj, nieznajomy!
Poprzedni 1 2 Następny
Postów: 536 Dołączył: 2011-04-12
#
Jaki jest opcode na strefę? Taką że po wjechaniu w nią przez gracza coś się dzieje.
Szukałem w bazie ale nie wiem którego użyć

___________________
http://img.userbars.pl/76/15185
http://images.chomikuj.pl/button/Toyota-Supra
Postów: 628 Dołączył: 2009-01-22
#
To może poeksperymentuj z tymi, które znalazłeś? Przecież jak mod scrashuje, PC nie wybucha.

___________________
Moderator
http://i.imgur.com/Abvv63y
Śledź mój kanał Twitter by być na bieżąco ze wszystkimi aktualizacjami moich modów!
Postów: 878 Dołączył: 2009-01-20
#
W pierwszym tutorialu o tworzeniu misji jest przykład zastosowania sfery.
Tworzenie Misji - Podstawy

Sferę można też utworzyć bezpośrednio podczas sprawdzenia, czy gracz dotarł do danego miejsca. Wszystko jest opisane w bazie opcodów:

Opcode 00EC

___________________
Administrator
Postów: 536 Dołączył: 2011-04-12
#
Więc napisałem coś takiego
Kod:
// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
0000: NOP 

00EC: actor $PLAYER_ACTOR sphere 1 near_point 2489.369 -1669.922 radius 80.0 80.0

:petla1
wait 10
if
0103: actor $PLAYER_ACTOR in_sphere 2489.369 -1669.922 13 radius 80.0 80.0 3.0 sphere 0 stopped_in_car

wait 10000


nie jest skończony ponieważ nie wiem jak dodać po
wait 10000 by w tym miejscu nastąpił wybuch

___________________
http://img.userbars.pl/76/15185
http://images.chomikuj.pl/button/Toyota-Supra
Postów: 878 Dołączył: 2009-01-20
#
Człowieku, nikt nie będzie zgadywał, o co ci chodzi. Sprecyzuj, co chcesz zrobić. Jaki to ma być wybuch? Samochód ma eksplodować, czy wybuch w określonym miejscu?

___________________
Administrator
Postów: 536 Dołączył: 2011-04-12
#
No napisałem wybuch. Normalny w tym miejscu. Nie żadnego obiektu czy auta tylko w tej strefie

___________________
http://img.userbars.pl/76/15185
http://images.chomikuj.pl/button/Toyota-Supra
Postów: 878 Dołączył: 2009-01-20
#
Zinterpretowałem "w tym miejscu" jako odwołanie do miejsca w kodzie źródłowym, bo napisałeś to odnośnie instrukcji wait.

Wybuch w określonym miejscu możesz utworzyć przy pomocy opcodu 0948.

___________________
Administrator
Postów: 536 Dołączył: 2011-04-12
#
Napisałem coś takiego, ale wybuch następuje niezależnie od tego czy gracz był w tym punkcie czy nie. PO włączeniu gry po 20 s następuje wybuch. Dlaczego nie następuje po 20s wtedy gdy gracz dojedzie do tego punktu ?
Kod:
// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
0000: NOP 
00EC:   actor $PLAYER_ACTOR 1 near_point 2489.897 -1669.733 radius 3.0 3.0 
wait 10 
if 
0103:   actor $PLAYER_ACTOR in_sphere 2489.897 -1669.733 13.33 radius 3.0 3.0 3.0 sphere 0 stopped_in_car 
wait 20000 

0565: create_explosion_at 2489.897 -1669.733 13.33 type 11

0A93: end_custom_thread 

___________________
http://img.userbars.pl/76/15185
http://images.chomikuj.pl/button/Toyota-Supra
Postów: 878 Dołączył: 2009-01-20
#
Proszę, przeczytaj podstawy tworzenia w SCM, dokładniej chodzi mi o poradnik o pętlach. Wtedy będziesz wiedział, co jest nie tak.

___________________
Administrator
Postów: 536 Dołączył: 2011-04-12
#
Napisałem coś takiego ale działa to tylko wtedy gdy gracz jest przez te 20s w tej strefie a ja chce by po wjechaniu w tą strefę {nieważne czy w niej jesteśmy czy już wyjechaliśmy} nastąpił po 20s wybuch. Jak to zrobić?
Kod:
// This file was decompiled using sascm.ini published by Seemann (http://sannybuilder.com/files/SASCM.rar) on 13.10.2007

{$VERSION 3.1.0027}
{$CLEO .cs}

//-------------MAIN---------------
0000: NOP 

00EC:   actor $PLAYER_ACTOR 1 near_point 2489.897 -1669.733 radius 30.0 30.0 
wait 10 

:NONAME_33
wait 10 
if and
00EC:   actor $PLAYER_ACTOR 1 near_point 2489.897 -1669.733 radius 30.0 30.0 
   Player.WantedLevel($PLAYER_CHAR) > 0
else_jump @NONAME_33
   018A: 1@ = create_marker_checkpoint_at 2489.897 -1669.733 13.33 
wait 20000 
0565: create_soundless_explosion_at 2489.897 -1669.733 13.33 type 11 



0A93: end_custom_thread 

___________________
http://img.userbars.pl/76/15185
http://images.chomikuj.pl/button/Toyota-Supra
Postów: 878 Dołączył: 2009-01-20
#
Kod jest napisany dobrze, odliczanie uruchamia się po wjechaniu w strefę. Gdzie potem jest gracz już nie ma znaczenia. Ten pierwszy opcode 00EC jest niepotrzebny, bo to funkcja sprawdzająca, a nie stosujesz tam żadnego ifa.

Kod:

{$CLEO .cs}
:NONAME_33
wait 
0
if 
and
   00EC:   actor $PLAYER_ACTOR 1 near_point 2489.897 -1669.733 radius 30.0 30.0 
   Player.WantedLevel($PLAYER_CHAR) > 0
else_jump 
@NONAME_33

018A: 1@ = create_marker_checkpoint_at 2489.897 -1669.733 13.33 
wait 
20000 
0565: create_soundless_explosion_at 2489.897 -1669.733 13.33 type 11 

0A93: end_custom_thread


Ewentualnie zamiast zwykłego waita możesz zastosować wbudowany licznik (timer). Więcej o licznikach tutaj.

Kod:
32@ = 0
:check1
wait 
0
  32@ >= 20000
jf 
@check1

// dalszy kod

___________________
Administrator
Postów: 536 Dołączył: 2011-04-12
#
Nie wiem co jest , ale po wklejeniu Twojego kodu gra zgłupiała. Tzn. Gdy wczytuje zapis to rozpoczyna nową grę a gdy rozpoczynam nową grę to wczytuje zapis. Po dotarciu do tego punktu wywala grę.
Dlaczego w moim skrypcie marker pojawia się po włączeniu gry a znika po tym jak nas goni policja? Przecież napisałem , że jak goni nas więcej niż 0 gwiazdek to wtedy tworzy marker.

___________________
http://img.userbars.pl/76/15185
http://images.chomikuj.pl/button/Toyota-Supra
Postów: 878 Dołączył: 2009-01-20
#
Spróbuj z tym:
Kod:
{$CLEO .cs}
:check
wait 
10
if
  
Player.Defined($PLAYER_CHAR)
jf 
@check


:hasArrived
  wait 
0
  if 
and
    00EC:   actor $PLAYER_ACTOR 1 near_point 2489.897 -1669.733 radius 30.0 30.0 
    Player.WantedLevel($PLAYER_CHAR) > 0
jf 
@hasArrived

018A: 1@ = create_marker_checkpoint_at 2489.897 -1669.733 13.33

32@ = 0
:wait
  wait 
0
  if
    
32@ >= 20000
jf 
@wait

0565: create_soundless_explosion_at 2489.897 -1669.733 13.33 type 11 

0A93: end_custom_thread


Gra wywalała, bo zapomniałem o if przy sprawdzaniu wartości timera.

___________________
Administrator
Postów: 536 Dołączył: 2011-04-12
#
Zadanie chceck nie zostało znalezione.

___________________
http://img.userbars.pl/76/15185
http://images.chomikuj.pl/button/Toyota-Supra
Postów: 878 Dołączył: 2009-01-20
#
Mogłeś już sam poprawić tę literówkę :) Zaktualizowałem posta.

___________________
Administrator
Poprzedni 1 2 Następny
Zaloguj się lub zarejestruj się, żeby pisać na forum.
Created & Powered by MakG