Bierbuikje Geplaatst: 30 december 2008 Auteur Rapport Geplaatst: 30 december 2008 Lijkt me sterk, er zitten altijd 5 seconden tussen. Wanneer je het een halve minuut ofzo wilt laten zijn, hoef je alleen die wait van 5000 te verhogen naar een leuk getal. Wat je ook kunt doen, is kijken of je ver genoeg uit de buurt bent voor je haar weer spawnt. Dan moet je een lus maken waarin je controleert hoe ver de Player van de Actor is, met behulp van de volgende opcode: 0104: actor $PLAYER_ACTOR near_actor 1@ radius 15.0 15.0 15.0 sphere 0 Die 15.0 staan voor x-y-z coördinaten. De sphere 0 zegt dat hij geen sphere eromheen wilt trekken, dat zou ik als ik jou was ook niet gewilt hebben: dat ziet er niet uit. Ik zal er wel wat mee om prutsen en kijken wat het resultaat zal zijn. Bedankt dutchy. Reageren
Dutchy3010 Geplaatst: 30 december 2008 Rapport Geplaatst: 30 december 2008 Dat laatste, uit de buurt gaan, is trouwens ook een stuk mooier. Dan zie je de actor meestal niet of niet goed uit de lucht vallen. Als je actors spawnt, "vallen" die namelijk naar de goede plek. Het is dus niet mooi, om dan ervoor te staan. Als je dus een eind uit de buurt bent, kan je dat niet zien. Reageren
Bierbuikje Geplaatst: 30 december 2008 Auteur Rapport Geplaatst: 30 december 2008 Ik heb nu de code: (Wordt wel een lange code ondertussen. // 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--------------- :Bierbuikje Model.Load(#VWFYWAI) Model.Load(#MINIGUN) 038B: load_requested_models jump @Bierbuikje1 :Bierbuikjeeenhalf Model.Load(#VWFYWAI) Model.Load(#MINIGUN) 038B: load_requested_models jump @Bierbuikje1 :Bierbuikje1 if or not Model.Available(#VWFYWAI) not Model.Available(#MINIGUN) else_jump @Bierbuikje2 wait 0 jump @Bierbuikje1 :Bierbuikje2 10@ = Actor.Create(CivFemale, #VWFYWAI, 2490.563, -1688.95, 13.51973) 01B2: give_actor 10@ weapon 38 ammo 30000 // Load the weapon model before using this 01B9: set_actor 10@ armed_weapon_to 38 05E2: AS_actor 10@ kill_actor $PLAYER_ACTOR Actor.WeaponAccuracy(10@) = 90 Actor.Health(10@) = 2000 0350: set_actor 10@ maintain_position_when_attacked 1 Model.Destroy(#VWFYWAI) Model.Destroy(#MINIGUN) repeat wait 100 until 0118: actor 10@ dead wait 5000 009B: destroy_actor 10@ jump @Bierbuikje3 :Bierbuikje3 if 0104: actor $PLAYER_ACTOR near_actor 1@ radius 15.0 15.0 15.0 sphere 0 else_jump @Bierbuikjeeenhalf wait 0 jump @Bierbuikje3 0A93: end_custom_thread Maar mijn SA crasht op het moment dat hij bij label 'Bierbuikje3' komt. ( Denk ik, op het moment dat hij moet herladen. ) Of heb ik hem fout neergezet? Reageren
Dutchy3010 Geplaatst: 30 december 2008 Rapport Geplaatst: 30 december 2008 Je hebt actor 1@ gedaan, jouw actor heet 10@. Ik kopieer altijd alleen de code uit SannyBuilder, je moet hem zelf verder invullen. jump @Bierbuikje3 :Bierbuikje3 Die jump is nutteloos, trouwens. Ohja, je code is niet zo heel lang hoor. De code die PatrickW en ik geschreven hebben, is op dit moment 9192 regels lang. Reageren
Bierbuikje Geplaatst: 30 december 2008 Auteur Rapport Geplaatst: 30 december 2008 Je hebt actor 1@ gedaan, jouw actor heet 10@. Ik kopieer altijd alleen de code uit SannyBuilder, je moet hem zelf verder invullen. jump @Bierbuikje3 :Bierbuikje3 Die jump is nutteloos, trouwens. Ohja, je code is niet zo heel lang hoor. De code die PatrickW en ik geschreven hebben, is op dit moment 9192 regels lang. Oeps, was ik vergeten. En wat moet er allemaal niet staan in 9192 regels? Reageren
Tjerk Geplaatst: 1 januari 2009 Rapport Geplaatst: 1 januari 2009 En wat moet er allemaal niet staan in 9192 regels? Even een gokje: Checks, zeer veel checks. Reageren
Dutchy3010 Geplaatst: 1 januari 2009 Rapport Geplaatst: 1 januari 2009 Tuurlijk veel checks, maar ook HEEL veel andere dingen. Design Your Own Mission is een super grote SCM-mod, ook al beseft men dat hier niet zo goed... Maar we gaan offtopic, ontopic weer graag. Reageren
Bierbuikje Geplaatst: 1 januari 2009 Auteur Rapport Geplaatst: 1 januari 2009 Ik probeer nu 2 actors te spawnen met wapen en dat ze ook weer respawnen, maar sa crasht weer. Eerlijk gezegd had ik het ook wel verwacht, maar ik weet niet hoe op te lossen. Dit is de code: {$CLEO .CS} :Bierbuikje Model.Load(#BALLAS1) Model.Load(#FAM1) Model.Load(#DESERT_EAGLE) jump @Bierbuikje2 :BierbuikjeBallas Model.Load(#BALLAS1) Model.Load(#DESERT_EAGLE) jump @BierbuikjeBallas2 :BierbuikjeGrove Model.Load(#FAM1) Model.Load(#DESERT_EAGLE) jump @BierbuikjeGrove2 :Bierbuikje2 10@ = Actor.Create(GANG1, #BALLAS1, -2323.607, -1637.773, 483.7031) 11@ = Actor.Create(GANG2, #FAM1, -2331.161, -1635.413, 483.7031) 01B2: give_actor 10@ weapon 24 ammo 30000 01B2: give_actor 11@ weapon 24 ammo 30000 01B9: set_actor 10@ armed_weapon_to 24 01B9: set_actor 11@ armed_weapon_to 24 05E2: AS_actor 10@ kill_actor 11@ 05E2: AS_actor 11@ kill_actor 10@ Actor.WeaponAccuracy(10@) = 0 Actor.WeaponAccuracy(11@) = 0 Actor.Health(10@) = 2000 Actor.Health(11@) = 2000 :Bierbuikje3 if 0350: set_actor 10@ maintain_position_when_attacked 1 else_jump @Bierbuikje4 jump @BierbuikjeBallas2 :Bierbuikje4 if 0350: set_actor 11@ maintain_position_when_attacked 1 else_jump @Bierbuikje3 jump @BierbuikjeGrove2 :BierbuikjeBallas2 Model.Destroy(#BALLAS1) Model.Destroy(#DESERT_EAGLE) repeat wait 100 until 0118: actor 10@ dead wait 5000 009B: destroy_actor 10@ jump @BierbuikjeBallas :BierbuikjeGrove2 Model.Destroy(#FAM1) Model.Destroy(#DESERT_EAGLE) repeat wait 100 until 0118: actor 11@ dead wait 5000 009B: destroy_actor 11@ jump @BierbuikjeGrove 0A93: end_custom_thread Het probleem zit denk ik hier: :Bierbuikje3 if 0350: set_actor 10@ maintain_position_when_attacked 1 else_jump @Bierbuikje4 jump @BierbuikjeBallas2 :Bierbuikje4 if 0350: set_actor 11@ maintain_position_when_attacked 1 else_jump @Bierbuikje3 jump @BierbuikjeGrove2 Maar ik heb geen idee hoe ik het moet oplossen, laat staan wat het eigenlijk inhoud. Wel weet ik dat het erin moet, maar het liefst wil ik weten hoe het moet en wat het doet. Alvast bedankt. Reageren
Bierbuikje Geplaatst: 2 januari 2009 Auteur Rapport Geplaatst: 2 januari 2009 Mijn code hierboven is een beetje heel erg rommelig, maar kan iemand mij laten zien hoe je 2 player spawns in 1 bestandje maakt? Ik kan wel 2 bestandjes aanmaken, maar ik wil leren hoe je het in 1 doet. En dat is mij nog niet gelukt. Alvast bedankt. Reageren
Beagle Geplaatst: 2 januari 2009 Rapport Geplaatst: 2 januari 2009 // 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--------------- :Bierbuikje Model.Load(#VWFYWAI) Model.Load(#VWFYWAI) Model.Load(#MINIGUN) 038B: load_requested_models jump @Bierbuikje1 :Bierbuikjeeenhalf Model.Load(#VWFYWAI) Model.Load(#VWFYWAI) Model.Load(#MINIGUN) 038B: load_requested_models jump @Bierbuikje1 :Bierbuikje1 if or not Model.Available(#VWFYWAI) not Model.Available(#VWFYWAI) not Model.Available(#MINIGUN) else_jump @Bierbuikje2 wait 0 jump @Bierbuikje1 :Bierbuikje2 10@ = Actor.Create(CivFemale, #VWFYWAI, 2490.563, -1688.95, 13.51973) 11@ = Actor.Create(CivFemale, #VWFYWAI, $X, $Y, $Z) 01B2: give_actor 10@ weapon 38 ammo 30000 // Load the weapon model before using this 01B2: give_actor 11@ weapon 38 ammo 30000 // Load the weapon model before using this 01B9: set_actor 10@ armed_weapon_to 38 01B9: set_actor 11@ armed_weapon_to 38 05E2: AS_actor 10@ kill_actor $PLAYER_ACTOR 05E2: AS_actor 11@ kill_actor $PLAYER_ACTOR Actor.WeaponAccuracy(10@) = 90 Actor.WeaponAccuracy(11@) = 90 Actor.Health(10@) = 2000 Actor.Health(11@) = 2000 0350: set_actor 10@ maintain_position_when_attacked 1 0350: set_actor 11@ maintain_position_when_attacked 1 Model.Destroy(#VWFYWAI) Model.Destroy(#MINIGUN) repeat wait 100 until 0118: actor 10@ dead wait 5000 009B: destroy_actor 10@ jump @Bierbuikjeeenhalf 0A93: end_custom_thread Ik weet niet of dit goed werkt, zou wel moeten. Alleen weet ik niet bij de repeat hoe je precies meerdere untils er bij zet Beetje onhandig, maarja Reageren
Dutchy3010 Geplaatst: 2 januari 2009 Rapport Geplaatst: 2 januari 2009 Om nog even terug te komen hierop: :Bierbuikje3 if 0350: set_actor 10@ maintain_position_when_attacked 1 else_jump @Bierbuikje4 jump @BierbuikjeBallas2 :Bierbuikje4 if 0350: set_actor 11@ maintain_position_when_attacked 1 else_jump @Bierbuikje3 jump @BierbuikjeGrove2 Ik zie niet in wat je met die if-jf wilt bereiken? Deze opcode zorgt ervoor dat de actor blijft staan op het moment dat hij aangevallen wordt. Dit is een opcode die een eigenschap mee geeft aan een actor, net zoiets als het toevoegen van een wapen aan een actor, niet een opcode waarmee je iets opvraagt (bijvoorbeeld of een actor dood is). Beagle hierboven had het al wel verbetert, maar ik wilde toch nog even uitleg erbij geven. @ Beagle... Je kunt een repeat-wait-until maar 1 conditie geven. Althans, ik weet niet hoe Bierbuikje het precies wilt. Je kunt achter de "until" maar 1 conditie zetten. Maar binnen de repeat-wait-until structuur kan je wel dingen zeggen. Toch zou ik het gewoon simepeler maken. Repeat-until is vooral handig als je iets de hele tijd wilt doen tot je een bepaalde conditie hebt gehaald. Deze keer zou ik dus gewoon een if-structuur maken. Ik neem aan dat je ze allebei wilt spawnen op het moment dat ze beiden dood zijn? Anders moet je je begin-structuur wat aanpassen. :DOOD wait 0 if and 0118: actor 10@ dead 0118: actor 11@ dead jf @DOOD jump @Bierbuikje Wat nog meer niet ok is aan je code: 11@ = Actor.Create(CivFemale, #VWFYWAI, $X, $Y, $Z) Je hebt de variabelen niet gedefinieerd. Waarschijnlijk spawnt deze actor dus gewoon op punt 0,0, maar ik neem aan dat dat niet de bedoeling is. Dus of een lijstje maken met gedefinieerde variabelen voor deze opcode ($X = ..., $Y = ..., $Z = ...), of gewoon de coördinaten daar invullen. Ohja, twee keer al die Model.Load is onzin... Dat is echt nergens voor nodig. En nog een tip voor je code: je actors zijn heel sterk en alles, maar je kunt ze met 1 headshot doden. Wie weet immuun maken voor headshots? Reageren
Beagle Geplaatst: 2 januari 2009 Rapport Geplaatst: 2 januari 2009 Oeps, die modellen laden en requesten is inderdaad niet nodig, even niet aan gedacht. De $X $Y $Z coordinaten bedoelde ik meer dat BB zelf de coordinaten in kon vullen Bij de repeat-wait-until structuur wist ik niet zeker of je meerdere condities kon stellen, dus had ik het er maar bij gehouden. Ach ja, weer wat geleerd Reageren
Bierbuikje Geplaatst: 4 januari 2009 Auteur Rapport Geplaatst: 4 januari 2009 (bewerkt) Ik probeer nu het aller domste gevecht op de wereld te maken, maar hoe spawn ik een actor in een auto? Ik heb het niet gevonden in de tuts. Alvast bedankt. Hieronder: toppie. Bewerkt: 4 januari 2009 door Bierbuikje Reageren
Dutchy3010 Geplaatst: 4 januari 2009 Rapport Geplaatst: 4 januari 2009 Dat is niet zo heel moeilijk: 0129: 41@ = create_actor_pedtype 23 model #SPECIAL02 in_car 35@ driverseat 01C8: 40@ = create_actor_pedtype 23 model #SPECIAL01 in_car 35@ passenger_seat 0 Die eerste creer je een actor op de bestuurdersstoel, die tweede op de andere 3 mogelijkheden. Die 0 op het laatst kan je daarvoor variëren. Reageren
Bierbuikje Geplaatst: 23 januari 2009 Auteur Rapport Geplaatst: 23 januari 2009 Ik ben weer even bezig gegaan, san andreas opgestart, alles laadt rustig, maar dan... Dan zie ik niet wat er zou moeten gebeuren. Er horen 4 ballas mannetjes en 1 grove mannetje te spawnen in grovestreet. Maar het gebeurt niet. Weet iemand hoe? Het script is wel geladen, dat kan ik zien in het menu. {$CLEO .CS} :ModelLoad Model.Load(#FAM1) Model.Load(#BALLAS1) Model.Load(#BALLAS2) Model.Load(#BALLAS3) Model.Load(#DESERT_EAGLE) jump @ModelControle :ModelLoad2 Model.Load(#FAM1) Model.Load(#BALLAS1) Model.Load(#BALLAS2) Model.Load(#BALLAS3) Model.Load(#DESERT_EAGLE) :ModelControle if or not Model.Available(#FAM1) not Model.Available(#BALLAS1) not Model.Available(#BALLAS2) not Model.Available(#BALLAS3) not Model.Available(#DESERT_EAGLE) else_jump @ModelSpawn wait 0 jump @ModelControle :ModelSpawn 10@ = Actor.Create(Gang2, #FAM1, 2517,37, -1686,822, 13,56062) 11@ = Actor.Create(Gang1, #BALLAS1, 2513,876, -1682,905, 13,42083) // 12@ = Actor.Create(Gang1, #BALLAS1, 2505,62, -1669,457, 13,37159) 13@ = Actor.Create(Gang1, #BALLAS2, 2506,693, -1667,886, 13,37623) 14@ = Actor.Create(Gang1, #BALLAS3, 2506,494, -1666,531, 13,38731) // 01B2: give_actor 10@ weapon 24 ammo 30000 // Load the weapon model before using this 01B2: give_actor 11@ weapon 24 ammo 30000 // Load the weapon model before using this // 01B2: give_actor 12@ weapon 24 ammo 30000 // Load the weapon model before using this 01B2: give_actor 13@ weapon 24 ammo 30000 // Load the weapon model before using this 01B2: give_actor 14@ weapon 24 ammo 30000 // Load the weapon model before using this // 01B9: set_actor 10@ armed_weapon_to 24 01B9: set_actor 11@ armed_weapon_to 24 // 01B9: set_actor 12@ armed_weapon_to 24 01B9: set_actor 13@ armed_weapon_to 24 01B9: set_actor 14@ armed_weapon_to 24 // Actor.WeaponAccuracy(10@) = 90 Actor.WeaponAccuracy(11@) = 90 // Actor.WeaponAccuracy(12@) = 90 Actor.WeaponAccuracy(13@) = 90 Actor.WeaponAccuracy(14@) = 90 // Actor.Health(10@) = 2000 Actor.Health(11@) = 1000 // Actor.Health(12@) = 1000 Actor.Health(13@) = 1000 Actor.Health(14@) = 1000 // 0350: set_actor 10@ maintain_position_when_attacked 1 0350: set_actor 11@ maintain_position_when_attacked 1 // 0350: set_actor 12@ maintain_position_when_attacked 1 0350: set_actor 13@ maintain_position_when_attacked 1 0350: set_actor 14@ maintain_position_when_attacked 1 // Model.Destroy(#FAM1) Model.Destroy(#BALLAS1) Model.Destroy(#BALLAS2) Model.Destroy(#BALLAS3) Model.Destroy(#DESERT_EAGLE) repeat wait 100 until 0118: actor 10@ dead repeat wait 100 until 0118: actor 11@ dead repeat wait 100 until 0118: actor 12@ dead repeat wait 100 until 0118: actor 13@ dead repeat wait 100 until 0118: actor 14@ dead wait 5000 009B: destroy_actor 10@ 009B: destroy_actor 11@ 009B: destroy_actor 12@ 009B: destroy_actor 13@ 009B: destroy_actor 14@ jump @ModelLoad2 0A93: end_custom_thread Excuses voor de vele repeat ... until, maar ik wist niet hoe ik het moest inkorten. Reageren
Recommended Posts
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.