21.02.2015, 20:29
Bueno lo que pasa es que cuando selecciono cualquiera de los 3 equipos, me spawnea siempre con el mismo skin (206). Aca les dejo el GM para ver donde esta el problema:
Ademбs es raro, debido a que en AddPlayerClass y OnPlayerSpawn les setie el skin a cada equipo. (SetPlayerSkin)
Код:
#include <a_samp>
#include <core>
#include <float>
#include <string>
#include <file>
#include <time>
#include <datagram>
#include <a_players>
#include <a_vehicles>
#include <a_objects>
#include <a_sampdb>
#pragma tabsize 0
#define COLOR_AZUL 0x0000FFFF
#define COLOR_BLANCO 0xFFFFFFFF
#define COLOR_NEGRO 0x000000FF
#define COLOR_ROJO 0xFF0000FF
#define COLOR_AMARILLO 0xFFFF00FF
#define COLOR_NARANJA 0xFFC200FF
#define COLOR_VERDE 0x00FF00FF
#define COLOR_VIOLETA 0xFF00FFFF
#define COLOR_CELESTE 0x00FFFFFF
#define Dialogo_Equipos (423) // definimos la id del diбlogo que aparecera para escoger un equipo
#define Dialogo_Argentina (424) // definimos la id del diбlogo que aparecera al escoger un equipo
#define Dialogo_Chile (425)
#define Dialogo_Brasil (426)
new Equipo[MAX_PLAYERS];
new string[64], NombreJugador[MAX_PLAYER_NAME];
#define TEAM_ARGENTINA 0
#define TEAM_CHILE 1
#define TEAM_BRASIL 2
public OnGameModeInit()
{
SetGameModeText("TDM v0.0.1 ESPAСOL");
UsePlayerPedAnims();
AddPlayerClass(206, 2043.6832,1352.4706,10.6719,91.6490, 0, 1, 0, 1, 0, 1); //ARGENTINA
AddPlayerClass(121, 2044.8971,1282.7948,10.6719,185.0232, 0, 1, 0, 1, 0, 1); //CHILE
AddPlayerClass(109, 2043.6832,1352.4706,10.6719,91.6490, 0, 1, 0, 1, 0, 1); //BRASIL
return 1;
}
public OnPlayerConnect(playerid)
{
ShowPlayerDialog(playerid, Dialogo_Equipos, DIALOG_STYLE_LIST, "Selecciona un equipo", "{0000FF}Argentina\n{FF0000}Chile\n{FFFF00}Brasil", "Seleccionar", "Cerrar");
SendClientMessage(playerid, COLOR_BLANCO, "Bienvenido al servidor, si no estбs registrado utiliza /registrarse [Contraseсa] para guardar tus datos.");
SendClientMessage(playerid, COLOR_NARANJA, "Para comenzar a jugar usa /ayuda.");
SendClientMessage(playerid, COLOR_ROJO, "No te olvides de leer las /reglas para evitar ser baneado.");
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
switch(dialogid)
{
case Dialogo_Equipos:
{
if(!response) return Kick(playerid);
if(response) // Si seleccionу uno de los equipos
{
switch(listitem)
{
case 0: SetPlayerTeam(playerid,TEAM_ARGENTINA),ShowPlayerDialog(playerid, Dialogo_Argentina, DIALOG_STYLE_LIST, "Selecciona una clase", "Asalto\nSniper\nComandante", "Seleccionar", "Atrбs"); // Si la opciуn fue Equipo A
case 1: SetPlayerTeam(playerid,TEAM_CHILE),ShowPlayerDialog(playerid, Dialogo_Chile, DIALOG_STYLE_LIST, "Selecciona una clase", "Asalto\nSniper\nComandante", "Seleccionar", "Atrбs"); // Si la opciуn fue Equipo B
case 2: SetPlayerTeam(playerid,TEAM_BRASIL),ShowPlayerDialog(playerid, Dialogo_Brasil, DIALOG_STYLE_LIST, "Selecciona una clase", "Asalto\nSniper\nComandante", "Seleccionar", "Atrбs"); // Si la opciуn fue Equipo C
}
}
return true;
}
case Dialogo_Argentina: // CLASES DE EQUIPO A
{
if(response)
{
switch(listitem)
{
case 0:SendClientMessage(playerid,COLOR_AZUL,"*SPAWN* Equipo: Argentina / Clase: Asalto."); //SE ENVIARA UN
case 1:SendClientMessage(playerid,COLOR_AZUL,"*SPAWN* Equipo: Argentina / Clase: Sniper."); // MENSAJE SI SELECCIONA
case 2:SendClientMessage(playerid,COLOR_AZUL,"*SPAWN* Equipo: Argentina / Clase: Comandante."); // TAL CLASE
}
}
return true;
}
case Dialogo_Chile: // CLASES DE EQUIPO B
{
if(response)
{
switch(listitem)
{
case 0:SendClientMessage(playerid,COLOR_ROJO,"*SPAWN* Equipo: Chile / Clase: Asalto."); //SE ENVIARA UN
case 1:SendClientMessage(playerid,COLOR_ROJO,"*SPAWN* Equipo: Chile / Clase: Sniper."); // MENSAJE SI SELECCIONA
case 2:SendClientMessage(playerid,COLOR_ROJO,"*SPAWN* Equipo: Chile / Clase: Comandante."); // TAL CLASE
}
}
return true;
}
case Dialogo_Brasil: // CLASES DE EQUIPO B
{
if(response)
{
switch(listitem)
{
case 0:SendClientMessage(playerid,COLOR_AMARILLO,"*SPAWN* Equipo: Brasil / Clase: Asalto."); //SE ENVIARA UN
case 1:SendClientMessage(playerid,COLOR_AMARILLO,"*SPAWN* Equipo: Brasil / Clase: Sniper."); // MENSAJE SI SELECCIONA
case 2:SendClientMessage(playerid,COLOR_AMARILLO,"*SPAWN* Equipo: Brasil / Clase: Comandante."); // TAL CLASE
}
}
return true;
}
}
return false;
}
public OnPlayerSpawn(playerid)
{
if(Equipo[playerid] == TEAM_ARGENTINA)
{
SetPlayerPos(playerid, 2043.6832,1352.4706,10.6719);
SetPlayerColor(playerid, COLOR_AZUL);
SetPlayerSkin(playerid, 206);
SetPlayerAmmo(playerid, 100.0)
GivePlayerWeapon(playerid, 24, 500);
GivePlayerWeapon(playerid, 27, 500);
GivePlayerWeapon(playerid, 31, 500);
}
if(Equipo[playerid] == TEAM_CHILE)
{
SetPlayerPos(playerid, 2044.8971,1282.7948,10.6719);
SetPlayerColor(playerid, COLOR_ROJO);
SetPlayerSkin(playerid, 121);
SetPlayerAmmo(playerid, 100.0)
GivePlayerWeapon(playerid, 24, 500);
GivePlayerWeapon(playerid, 27, 500);
GivePlayerWeapon(playerid, 31, 500);
}
if(Equipo[playerid] == TEAM_BRASIL)
{
SetPlayerPos(playerid, 2043.6832,1352.4706,10.6719);
SetPlayerColor(playerid, COLOR_AMARILLO);
SetPlayerSkin(playerid, 109);
SetPlayerAmmo(playerid, 100.0)
GivePlayerWeapon(playerid, 24, 500);
GivePlayerWeapon(playerid, 27, 500);
GivePlayerWeapon(playerid, 31, 500);
}
if(Equipo[playerid] == Equipo[playerid])
{
GetPlayerName(playerid,NombreJugador,MAX_PLAYER_NAME);
format(string,sizeof string,"**SERVER: %s ha entrado al servidor.**",NombreJugador); //Mensaje. Si lo vais a modificar no cambies %s (es el nombre del jugador).
SendClientMessageToAll(COLOR_BLANCO, string);
}
SetPlayerInterior(playerid, 0);//Regresarlos al interior normal cada vez que spawneen
SetPlayerVirtualWorld(playerid, 0);//Regresarlos al mundo normal cada vez que spawneen
}
public OnPlayerDeath(playerid, killerid, reason)
{
SendDeathMessage(killerid,reason,playerid); // para q se muestre como tu quieres
SetPlayerScore(killerid, GetPlayerScore(killerid) + 1); // esto le suma score cada jugador q mate
GivePlayerMoney(killerid,2500); // y esto le da 1000 $ cada vez q mata a un jugador
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if(!strcmp(cmdtext, "/ayuda", true))
{
SendClientMessage(playerid, COLOR_VERDE, "SERVER: Este es el comando de ayuda.");
return 1;
}
if(!strcmp(cmdtext, "/guardardatos", true))
{
SendClientMessage(playerid, COLOR_VERDE, "Todas tus estadisticas han sido guardadas exitosamente.");
return 1;
}
return SendClientMessage(playerid, COLOR_ROJO, "**Comando inexistente**, escribe /ayuda.");
}

