Jump to content

Error bij adden van actors


Recommended Posts

Geplaatst:

Ik heb de mod "New Vice City 2007" geinstalleerd en daarbij zijn wat aanpassingen gedaan, onder andere een paar mensen in de Greasy Chopper die dan toegankelijk is. Maar ik probeer daar dus nog andere mensen neer te zetten d.m.v sannybuilder 3 en vice city ultimate trainer voor de coördinaten. Maar telkens wanneer ik nieuwe actor's heb toegevoegd en ik probeer de bar binnen te gaan crash het spel door "Unhandled exeption". Dit is het stukje code dat ik dus bijgewerkt hebt om meer actors toe te voegen:

:POOLELV_216
jump @POOLELV_10 

:ENTINT
thread 'ENTINT' 

:ENTINT_10
wait 250 
if 
  Player.Defined($PLAYER_CHAR)
else_jump @ENTINT_10 
if 
00F6:   player $PLAYER_CHAR 0 -597.42 651.6 11.37 radius 1.0 1.0 1.0 
else_jump @ENTINT_1563 
if 
 $330 == 1 // integer values 
else_jump @ENTINT_1563 
if 
 $1325 == 0 // integer values 
else_jump @ENTINT_1563 
gosub @NONAME_1_11785 
Model.Load(#BKA)
Model.Load(#BKB)
Model.Load(#WMYCR)
Model.Load(#IGmerc2)
Model.Load(#IGjezz)
Model.Load(#IGpercy)
Model.Load(#IGHlary)
Model.Load(#Sgb)
Model.Load(#Sga)
038B: load_requested_models 

:ENTINT_136
if or
  not Model.Available(#BKA)
  not Model.Available(#BKB)
  not Model.Available(#WMYCR)
  not Model.Available(#IGmerc2)
  not Model.Available(#IGjezz)
  not Model.Available(#IGpercy)
  not Model.Available(#IGHlary)
  not Model.Available(#Sgb)
  not Model.Available(#Sga)
else_jump @ENTINT_170 
wait 0 
jump @ENTINT_136 

:ENTINT_170
$297 = 1 // integer values 
00BA: text_styled 'CRED107' 3000 ms 2  // Bikers bar
0395: clear_area 1 at -600.142 630.94 range 50.0 50.0 
$1326 = Actor.Create(CivMale, #BKA, -601.063, 641.74, 11.25)
Actor.Angle($1326) = 25.0
Actor.Health($1326) = 500
0291: unknown_actor $1326 unknown_behavior_flag 1 
0243: set_actor $1326 ped_stats_to 11 
0372: set_actor $1326 anim 24 wait_state_time 1000000 ms 
$1327 = Actor.Create(CivMale, #BKB, -601.125, 642.439, 11.25)
Actor.Angle($1327) = 205.0
Actor.Health($1327) = 100
0291: unknown_actor $1327 unknown_behavior_flag 1 
0243: set_actor $1327 ped_stats_to 11 
0372: set_actor $1327 anim 24 wait_state_time 1000000 ms 
$1328 = Actor.Create(CivMale, #BKB, -596.956, 633.067, 10.695)
Actor.Angle($1328) = 25.0
Actor.Health($1328) = 500
0291: unknown_actor $1328 unknown_behavior_flag 1 
0243: set_actor $1328 ped_stats_to 11 
$1329 = Actor.Create(CivMale, #WMYCR, -593.96, 640.44, 10.695)
Actor.Angle($1329) = 105.0
Actor.Health($1329) = 500
0291: unknown_actor $1329 unknown_behavior_flag 1 
0243: set_actor $1329 ped_stats_to 11 
022D: set_actor $1329 to_look_at_player $PLAYER_CHAR 
$1330 = Actor.Create(CivMale, #BKA, -595.849, 640.199, 10.695)
Actor.Angle($1330) = 285.5
0372: set_actor $1330 anim 19 wait_state_time 1000000 ms 
0291: unknown_actor $1330 unknown_behavior_flag 1 
0243: set_actor $1330 ped_stats_to 11 
$1331 = Actor.Create(CivMale, #BKA, -600.2241, 627.3405, 11.67647)
Actor.Angle($1331) = 205.0
Actor.Health($1331) = 500
0291: unknown_actor $1331 unknown_behavior_flag 1 
0243: set_actor $1331 ped_stats_to 11 
$1332 = Actor.Create(CivMale, #BKA, -598.9388, 634.0326, 11.67647)
Actor.Angle($1332) = 285.5
Actor.Health($1332) = 500
0372: set_actor $1332 anim 19 wait_state_time 1000000 ms 
0291: unknown_actor $1332 unknown_behavior_flag 1 
0243: set_actor $1332 ped_stats_to 11 
$1334 = Actor.Create(CivMale, #IGMERC2, -600.8973, 634.827, 11.67647)
Actor.Angle($1334) = 105.0
Actor.Health($1334) = 500
0372: set_actor $1334 anim 29 wait_state_time 1000000 ms 
0291: unknown_actor $1334 unknown_behavior_flag 1 
0243: set_actor $1334 ped_stats_to 11 
$1335 = Actor.Create(CivMale, #IGJEZZ, -602.903, 632.5664, 12.23471)
Actor.Angle($1335) = 285.5
Actor.Health($1335) = 500
0291: unknown_actor $1335 unknown_behavior_flag 1 
0243: set_actor $1335 ped_stats_to 11 
$1336 = Actor.Create(CivMale, #IGPERCY, -603.0391, 629.5772, 12.23471)
Actor.Angle($1336) = 285.5
Actor.Health($1336) = 500
0372: set_actor $1336 anim 24 wait_state_time 1000000 ms 
0291: unknown_actor $1336 unknown_behavior_flag 1 
0243: set_actor $1336 ped_stats_to 11 
$1338 = Actor.Create(CivMale, #IGHLARY, -597.773, 638.2274, 11.67647)
Actor.Angle($1338) = 105.0
Actor.Health($1338) = 500
0372: set_actor $1338 anim 19 wait_state_time 1000000 ms 
0291: unknown_actor $1338 unknown_behavior_flag 1 
0243: set_actor $1338 ped_stats_to 11 
$1340 = Actor.Create(CivMale, #SGB, -594.3298, 650.9385, 11.67647)
Actor.Angle($1340) = 205.0
Actor.Health($1340) = 500
0291: unknown_actor $1340 unknown_behavior_flag 1 
0243: set_actor $1340 ped_stats_to 11 
022D: set_actor $1340 to_look_at_player $PLAYER_CHAR 
$1342 = Actor.Create(CivMale, #SGA, -594.7762, 631.7631, 11.67647)
Actor.Angle($1342) = 25.0
Actor.Health($1342) = 500
0291: unknown_actor $1342 unknown_behavior_flag 1 
0243: set_actor $1342 ped_stats_to 11 
wait 1000 
select_interior 11 
0055: put_player $PLAYER_CHAR at -597.02 642.46 11.0 
0171: set_player $PLAYER_CHAR z_angle_to 23.0 
$1325 = 1 // integer values 
create_thread @NONAME_2 
wait 1000 
gosub @NONAME_1_12036 

:ENTINT_1345
wait 500 
if or
 $1325 == 0 // integer values 
  Actor.Dead($PLAYER_ACTOR)
else_jump @ENTINT_1424 
Actor.DestroyInstantly($1326)
Actor.DestroyInstantly($1328)
Actor.DestroyInstantly($1329)
Actor.DestroyInstantly($1327)
Actor.DestroyInstantly($1330)
Actor.DestroyInstantly($1331)
Actor.DestroyInstantly($1332)
Actor.DestroyInstantly($1334)
Actor.DestroyInstantly($1335)
Actor.DestroyInstantly($1336)
Actor.DestroyInstantly($1338)
Actor.DestroyInstantly($1340)
Actor.DestroyInstantly($1342)
Model.Destroy(#BKA)
Model.Destroy(#BKB)
Model.Destroy(#WMYCR)
Model.Destroy(#IGmerc2)
Model.Destroy(#IGjezz)
Model.Destroy(#IGpercy)
Model.Destroy(#IGHlary)
Model.Destroy(#Sgb)
Model.Destroy(#Sga)
$1325 = 0 // integer values 
jump @ENTINT_10 

:ENTINT_1424
wait 0 
if 
00F6:   player $PLAYER_CHAR 0 -600.567 639.722 11.254 radius 1.0 1.0 1.0 
else_jump @ENTINT_1534 
if 
  Player.Money($PLAYER_CHAR) > 499
else_jump @ENTINT_1541 
Player.Money($PLAYER_CHAR) += -500
$1140 = 100 // integer values 
018C: play_sound 1 at -600.567 639.722 11.254 
wait 2000 

:ENTINT_1534
jump @ENTINT_1345

Iemand enig idee wat ik fout heb gedaan? Moet toegeven dat ik geen tutorial heb gelezen hierover. Ik hoop op reactie's.

Groetjes,

LJ

  • 2 weken later...
Geplaatst:

Ik heb je code eens bekeken en ik zie volgens mij sowieso al 1 fout die je eventueel eerst even moet verhelpen en daarna het eens opnieuw moet proberen.

Ergens onderaan je code staat dit:

Actor.DestroyInstantly($1326)
Actor.DestroyInstantly($1328)

Terwijl je eerder in het script nog een andere Actor liet spawnen, namelijk deze:

$1327 = Actor.Create(CivMale, #BKB, -601.125, 642.439, 11.25)
Actor.Angle($1327) = 205.0
Actor.Health($1327) = 100
0291: unknown_actor $1327 unknown_behavior_flag 1
0243: set_actor $1327 ped_stats_to 11
0372: set_actor $1327 anim 24 wait_state_time 1000000 ms

Namelijk Actor $1327.

Je moet dit stukje code:

Actor.DestroyInstantly($1326)
Actor.DestroyInstantly($1328)

Even vervangen door dit stukje:

Actor.DestroyInstantly($1326)
Actor.DestroyInstantly($1327)
Actor.DestroyInstantly($1328)

Hopelijk werkt dit voor je ;)

Geplaatst:

Dat kan niet de fout veroorzaken, sowieso kan dat nooit een crash opleveren. Het enige wat je niet doet, is een actor opruimen. Alleen als je 100 zulke actors heb en dan nog niet opruimt, heb je kans dat hij zal crashen. Maar één actor niet opruimen is geen fout voor het programma, het is alleen nalatigheid bij het scripten.

Een mogelijke fout is dat je teveel condities in je lus hebt gezet:

:ENTINT_136
if or
  not Model.Available(#BKA)
  not Model.Available(#BKB)
  not Model.Available(#WMYCR)
  not Model.Available(#IGmerc2)
  not Model.Available(#IGjezz)
  not Model.Available(#IGpercy)
  not Model.Available(#IGHlary)
  not Model.Available(#Sgb)
  not Model.Available(#Sga)
else_jump @ENTINT_170
wait 0
jump @ENTINT_136

Gebruik nooit alleen cijfers in een globale variabelen. Ik weet dat in de main.scm van Rockstar dit heel vaak voorkomt, maar het kan nogal buggy zijn.

Daarnaast, er zit hier nog een groot stuk code aan vast. Voordat je in je eerste check komt waarbij de speler wat moet doen (dus kijken of actor vermoord is of zo), kan de code de crash veroorzaken. Nadat je dus bij de bar bent, gaat de code in één streep door naar:

create_thread @NONAME_2
wait 1000
gosub @NONAME_1_12036

Het is dus heel goed mogelijk dat in die andere thread de fout zit, maar dat heb je niet laten zien.

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

×   Je hebt text geplaatst met opmaak.   Opmaak verwijderen

  Only 75 emoji are allowed.

×   Je link is automatisch ingevoegd.   In plaats daarvan weergeven als link

×   Je vorige bewerkingen zijn hersteld.   Alles verwijderen

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.
×
×
  • Create New...