1 Scripting thing where i need help for. -
UnlimitedFreeroam - 26.07.2012
I have my own server, and i know a little how to script. But i need one little thing:
When a player has already a car and he'll spawn a new vehicle, His old Vehicle will get removed.
Can anyone give me a script of this or help me with it?
Re: 1 Scripting thing where i need help for. -
Misiur - 26.07.2012
1. Global array new p_cars[MAX_PLAYERS]
2. On command to spawn car check if p_cars[playerid] is empty. If it is not, delete previous car. Assign created car id to p_cars[playerid]
Re: 1 Scripting thing where i need help for. -
UnlimitedFreeroam - 26.07.2012
Hmm, i'm not understanding this sorry, I'm not a good scripter.
Re: 1 Scripting thing where i need help for. -
cosbraa - 26.07.2012
So you want it so if a player spawns a car (we'll call this car A) and then they spawn a new car (call this one B), you want car A to despawn?, then if they were to spawn car C, car B will despawn? etc etc?
Re: 1 Scripting thing where i need help for. -
UnlimitedFreeroam - 26.07.2012
@ Cosbraa, yes.
Imma going to eat now back in 1 hour kinda that.
Re: 1 Scripting thing where i need help for. -
DaRealShazz - 26.07.2012
Does it matter if the person is in the car or not?
Re: 1 Scripting thing where i need help for. -
cosbraa - 26.07.2012
Well, as Misiur said, make a global variable. Call it whatever you want
Car[MAX_PLAYERS];
Then when a player spawns, set the vehicleid of the car you spawn to Car[playerid].
So, when the command to spawn the car is called, it needs to run the check of seeing if they Car[playerid] > 0, and if it is, then DestroyVehicle(Car[playerid]);
But then have it spawn the car and set the new vehicle id to Car[playerid, like Car[playerid] = vehicleid.
Probably missed a few things and this probably wont help you much, i'm tired and im going.
Re: 1 Scripting thing where i need help for. -
DaRealShazz - 26.07.2012
Create variable:
Put this under the car spawning command:
pawn Code:
if (pCars[playerid] > 0) DestroyVehicle(pCars[playerid]);
PutPlayerInVehicle(playerid, CreateVehicle(modelid, Float:x, Float:y, Float:z, Float:angle, color1, color2, respawn_delay), 0);
pCars[playerid] = GetPlayerVehicleID(playerid);
You have to put in the parameters for CreateVehicle function.
Haven't tested, but it should work.
Re: 1 Scripting thing where i need help for. -
UnlimitedFreeroam - 26.07.2012
@ DaRealShazz
U mean under this:
new Float: X, Float: Y, Float: Z;
GetPlayerPos(playerid,X,Y,Z);
if(dialogid == 2)
Re: 1 Scripting thing where i need help for. -
maramizo - 26.07.2012
Quote:
Originally Posted by DaRealShazz
Create variable:
Put this under the car spawning command:
pawn Code:
if (pCars[playerid] > 0) DestroyVehicle(pCars[playerid]); PutPlayerInVehicle(playerid, CreateVehicle(modelid, Float:x, Float:y, Float:z, Float:angle, color1, color2, respawn_delay), 0); pCars[playerid] = GetPlayerVehicleID(playerid);
You have to put in the parameters for CreateVehicle function.
Haven't tested, but it should work.
|
To make this work you'd have to set pCars[playerid] = 0; under OnPlayerConnect.
Re: 1 Scripting thing where i need help for. -
Misiur - 26.07.2012
Better yet:
pawn Code:
new pCars[MAX_PLAYERS] = {0, ...};
Re: 1 Scripting thing where i need help for. -
maramizo - 26.07.2012
Quote:
Originally Posted by Misiur
Better yet:
pawn Code:
new pCars[MAX_PLAYERS] = {0, ...};
|
Yes, and you spam your code with utter nonsense, imagine if he has max_players of 500, he's going to create 500 lines saying {0}?! Instead of one simple line under OnPlayerConnect?
Re: 1 Scripting thing where i need help for. -
UnlimitedFreeroam - 26.07.2012
I got this error when im doing Compile:
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(4187) : warning 204: symbol is assigned a value that is never used: "pCars"
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(11956) : error 017: undefined symbol "pCars"
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(11956) : warning 215: expression has no effect
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(11956) : error 001: expected token: ";", but found "]"
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(11956) : error 029: invalid expression, assumed zero
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(11956) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
4 Errors.
Re: 1 Scripting thing where i need help for. -
Misiur - 26.07.2012
Actually, neither of these are required, because default value is equal 0 (
https://sampwiki.blast.hk/wiki/Scripting_Basics#Accessing )
@OP:
Looks like you didn't register the variable as global (outside any local scope). Did you place its initialization in some callback?
Re: 1 Scripting thing where i need help for. -
maramizo - 26.07.2012
Quote:
Originally Posted by UnlimitedFreeroam
I got this error when im doing Compile:
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(4187) : warning 204: symbol is assigned a value that is never used: "pCars"
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(11956) : error 017: undefined symbol "pCars"
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(11956) : warning 215: expression has no effect
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(11956) : error 001: expected token: ";", but found "]"
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(11956) : error 029: invalid expression, assumed zero
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(11956) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
4 Errors.
|
Show me those lines, my guess is that you did not place pCars into a "global scope area".
Show me 5 lines before EACH error.
Re: 1 Scripting thing where i need help for. -
maramizo - 26.07.2012
Quote:
Originally Posted by Misiur
|
You need to initialize any array to it's full extent, try using your own suggestion and you'll know.
Re: 1 Scripting thing where i need help for. -
UnlimitedFreeroam - 26.07.2012
I don't understand anything about that Global bla bla Area.
Quote:
SendClientMessage(playerid, COLOR_MESSAGE_YELLOW, "If you want to repair your car, press 'CapsLock");
// (the previous player may of changed it)
TextDrawShowForPlayer(playerid, WelcomeText);
for( new slots = GetMaxPlayers( ), i; i < slots; i ++ )
{
if( IsPlayerConnected( i ) && !IsPlayerNPC( i ) )
{
SpeedBoostMultiplier[ i ] = 3.0;
}
new pCars[MAX_PLAYERS];
|
First error on line 4187, I don't know or i placed everything on the right place etc.
return SendClientMessage(playerid, 0xFF0000FF, "Now Drive your car into the Neon Garage");
}
}
}
}
// credits to Yuri for his carmenu
new Float: X, Float: Y, Float: Z;
GetPlayerPos(playerid,X,Y,Z);
if(dialogid == 2)
{
if (pCars[playerid] > 0) DestroyVehicle(pCars[playerid]);
PutPlayerInVehicle(playerid, CreateVehicle(modelid, Float
, Float:y, Float:z, Float:angle, color1, color2, respawn_delay), 0);
pCars[playerid] = GetPlayerVehicleID(playerid);
if(response)
Second error at line 11956
I don't know anything about this things, maybe u can help me on Teamviewer.
Re: 1 Scripting thing where i need help for. -
maramizo - 26.07.2012
Place pCars[MAX_PLAYERS]; somewhere where it is outside of all scopes ( not between any { } ).
Re: 1 Scripting thing where i need help for. -
UnlimitedFreeroam - 26.07.2012
Quote:
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(4189) : warning 204: symbol is assigned a value that is never used: "pCars"
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(11957) : error 017: undefined symbol "pCars"
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(11957) : warning 215: expression has no effect
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(11957) : error 001: expected token: ";", but found "]"
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(11957) : error 029: invalid expression, assumed zero
C:\Users\eigenaar\Contacts\Pictures\Desktop\BETA Server\gamemodes\TorettoRacing1.pwn(11957) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
4 Errors.
|
Still this errros,
Maybe u can help me with Teamviewer if u have it?
Re: 1 Scripting thing where i need help for. -
DaRealShazz - 26.07.2012
Quote:
Originally Posted by UnlimitedFreeroam
Still this errros,
Maybe u can help me with Teamviewer if u have it?
|
Check your PM.