01.09.2012, 22:28
Reeks van tutorials: Functies
Moeilijkheidsgraad: (Absolute) Beginner
Benodigdheden: de a_samp include (komt standaard bij een SA:MP 0.3 server)
Opmerkingen: Het kan zijn dat ik in deze tutorial de woorden functie en methode door elkaar gebruik. Het betekent in deze context hetzelfde.
AddStaticVehicle en AddStaticVehicleEx
Inleiding
Waarschijnlijk is een van je eerste functies die je gebruikt in je script AddStaticVehicle. AddStaticVehicle is de functie die je gebruikt om een statisch voertuig te plaatsen in je server. Daar gaat deze tutorial over samen met AddStaticVehicleEx. Allereerst AddStaticVehicle, daarna gaan we ons verdiepen in AddStaticVehicleEx. Kan je niet wachten? Scroll dan gelijk naar beneden
Theorie
AddStaticVehicle is de functie om een statisch voertuig in de server te plaatsen. Deze functie kan alleen gebruikt worden on OnGameModeInit(). De reden hiervoor is omdat het een statisch voertuig is. Het voertuig wordt eenmalig aangemaakt en daarna voor altijd daar gespawnt.
De functie ziet er als volgt uit:
Allereerst zullen we de parameters ieder voor zich bij langs gaan:
Praktijk
Met bovenstaande code zet je een politieauto van San Fierro (SFPD > ID 597) neer bij het politiebureau van San Fierro. De kleuren worden automatisch opgehaald uit je San Andreas installatie (en dit is waarschijnlijk gewoon zwart-wit omdat dat de kleuren zijn).
Tip: Om nu niet te hoeven prutsen met de coordinaten in een of ander programma kan je ook in een willekeurige server gaan (of in je eigen en fs_debug starten, daarna /v <autonaam> doen (waar <autonaam> de naam van het voertuig is: bijvoorbeeld: /v sfpd)) en in een voertuig stappen, naar de plaats rijden waar je hem wil hebben en daar /save typen. Daarna ga je naar de volgende locatie op je computer: Mijn Documenten/SAMP/savedpositions.txt en daar krijg je de volledige code al toegereikt!
AddStaticVehicleEx
AddStaticVehicleEx is de uitgebreide versie van AddStaticVehicle. Je krijgt dan de volgende opbouw van de functie:
De enige parameter die erbij is gekomen is de respawn_delay parameter. Door deze parameter te gebruiken kun je zelf kiezen hoelang het voertuig onbemand blijft staan op de map zonder dat hij respawnd word. Wil je dat hij altijd blijft staan en niet uit zichzelf respawnt dan zet je hier -1 neer.
De waarde van deze parameter is een volledig getal in seconden. Wil je dat een voertuig na 1 minuut ongebruikt respawnt dan gebruik je als waarde 60, aangezien er 60 seconden in een minuut zitten.
Deze functie moet, net als AddStaticVehicle, in OnGameModeInit staan en nergens anders!
Praktijk
In bovenstaande code wordt dezelfde SFPD als in het AddStaticVehicle voorbeeld hierboven gebruikt, maar hebben we de respawntijd aanzienlijk verkort (namelijk naar 2 minuten). Als je AddStaticVehicle zou hebben gebruikt dan had de auto veel langer onbemand blijven staan (volgens mij ongeveer een half uur).
Hoop dat je er wat aan hebt gehad. Vragen? Stel ze gerust!
Kortere versies nodig? Op de SA:MP wiki staan deze artikelen nu ook!
Moeilijkheidsgraad: (Absolute) Beginner
Benodigdheden: de a_samp include (komt standaard bij een SA:MP 0.3 server)
Opmerkingen: Het kan zijn dat ik in deze tutorial de woorden functie en methode door elkaar gebruik. Het betekent in deze context hetzelfde.
AddStaticVehicle en AddStaticVehicleEx
Inleiding
Waarschijnlijk is een van je eerste functies die je gebruikt in je script AddStaticVehicle. AddStaticVehicle is de functie die je gebruikt om een statisch voertuig te plaatsen in je server. Daar gaat deze tutorial over samen met AddStaticVehicleEx. Allereerst AddStaticVehicle, daarna gaan we ons verdiepen in AddStaticVehicleEx. Kan je niet wachten? Scroll dan gelijk naar beneden
Theorie
AddStaticVehicle is de functie om een statisch voertuig in de server te plaatsen. Deze functie kan alleen gebruikt worden on OnGameModeInit(). De reden hiervoor is omdat het een statisch voertuig is. Het voertuig wordt eenmalig aangemaakt en daarna voor altijd daar gespawnt.
De functie ziet er als volgt uit:
pawn Код:
AddStaticVehicle(modelid, Float:spawn_x, Float:spawn_y, Float:spawn_z, Float:angle, color1, color2);
// Zie wiki.sa-mp.com/wiki/AddStaticVehicle
modelid | Ieder voertuig heeft een modelid. Deze is niet door SA:MP maar door GTA zelf gedefinieerd. Alle modelids kan je vinden op de SA:MP wiki |
Float: spawn_x | Float: spawn_y | Float: spawn_z | | Ieder voertuig krijgt een X, Y en Z coordinaat mee zodat hij weet waar hij moet spawnen. Ieder van deze parameters moet van het type Float zijn (en een Float mag natuurlijk ook altijd een standaard integer zijn). |
Float:angle | Het voertuig krijgt een hoek (aantal graden) mee. Deze parameter zorgt ervoor dat het voertuig de goede kant op 'kijkt'. De waarde van deze float ligt tussen 0 en 360. |
color1 | color2 | Ieder voertuig heeft twee basiskleuren. Deze kleuren hebben een kleurcode waarmee ze herkend worden door het spel. Deze waarde kan je bij allebei op -1 zetten en hij kiest een random (door GTA goedgekeurde kleurcombinatie) uit. |
pawn Код:
OnGameModeInit() {
AddStaticVehicle(597,-1604.3983,749.7172,-5.2727,177.9079,-1,-1); // politie sf
}
Tip: Om nu niet te hoeven prutsen met de coordinaten in een of ander programma kan je ook in een willekeurige server gaan (of in je eigen en fs_debug starten, daarna /v <autonaam> doen (waar <autonaam> de naam van het voertuig is: bijvoorbeeld: /v sfpd)) en in een voertuig stappen, naar de plaats rijden waar je hem wil hebben en daar /save typen. Daarna ga je naar de volgende locatie op je computer: Mijn Documenten/SAMP/savedpositions.txt en daar krijg je de volledige code al toegereikt!
AddStaticVehicleEx
AddStaticVehicleEx is de uitgebreide versie van AddStaticVehicle. Je krijgt dan de volgende opbouw van de functie:
pawn Код:
AddStaticVehicleEx(modelid, Float:spawn_x, Float:spawn_y, Float:spawn_z, Float:angle, color1, color2, respawn_delay);
De waarde van deze parameter is een volledig getal in seconden. Wil je dat een voertuig na 1 minuut ongebruikt respawnt dan gebruik je als waarde 60, aangezien er 60 seconden in een minuut zitten.
Deze functie moet, net als AddStaticVehicle, in OnGameModeInit staan en nergens anders!
Praktijk
pawn Код:
OnGameModeInit() {
AddStaticVehicleEx(597,-1604.3983,749.7172,-5.2727,177.9079,-1,-1, 120); // politie sf respawnt na 2 min
}
Hoop dat je er wat aan hebt gehad. Vragen? Stel ze gerust!
Kortere versies nodig? Op de SA:MP wiki staan deze artikelen nu ook!