Selecionar Char pela callback RequestClass -
LordShadow - 19.06.2013
Pessoal, eu mexi tanto com Gamemode de RPG, que me esqueci agora como mexe com a callback
OnPlayerRequestClass, Alguem poderia fazer um favor e criar um sistema simples da callback, com Grupos e cada grupo com suas skins. Sу de base. Obrigado! ,
+REP quem ajudar
Re: Selecionar Char pela callback RequestClass -
Delete_ - 19.06.2013
https://sampwiki.blast.hk/wiki/OnPlayerRequestClass
Re: Selecionar Char pela callback RequestClass -
LordShadow - 19.06.2013
Jб fui na wiki , nao tem mais aquela explicaзao da callback.
Por isso tou pedindo um exemplo.
Quero um exemplo tipo asimm
Seleзгo de Grupos
Grupo 1 -- > 3 skin
Grupo 2 --> outras 3 skin
Tipo isso entende?
Re: Selecionar Char pela callback RequestClass -
Falcon. - 19.06.2013
Ok, vamos lб!
primeiramente vocк deve adicionar as skins que queira, lembre-se que os ID das classes vгo ser atribuidos de acordo com a sequкncia que vocк adicionar.
Para isso vocк deverб usar a funзгo
AddPlayerClass em
OnGameModeInit
PHP код:
public OnGameModeInit()
{
// skins para a equipe ALFA
//Class 0:
AddPlayerClass(285, 0.0, 0.0, 0.0, 0.0, 0, 0, 0, 0, 0, 0);
//Class 1:
AddPlayerClass(280, 0.0, 0.0, 0.0, 0.0, 0, 0, 0, 0, 0, 0);
// skins para a equipe BRAVO
//Class 2:
AddPlayerClass(100, 0.0, 0.0, 0.0, 0.0, 0, 0, 0, 0, 0, 0);
//Class 3:
AddPlayerClass(121, 0.0, 0.0, 0.0, 0.0, 0, 0, 0, 0, 0, 0);
return 1;
}
Em
OnPlayerRequestClass, o parвmetro
classid vai receber o id da skin que vocк visualiza na tela quando se conecta/muda pelas setinhas.
Sabendo-se disso dб para se fazer o quк vocк quer:
PHP код:
public OnPlayerRequestClass(playerid, classid)
{
new string_[50], equipe_[50];
if(classid <= 1) equipe_ = "ALFA";
else if(classid >= 2) equipe_ = "BRAVO";
format(string_, 50, "classid: %02i | equipe: %s", classid, equipe_);
SendClientMessage(playerid, -1, string_);
return 1;
}
Espero que tenha entendido.
Cumprimentos.
Re: Selecionar Char pela callback RequestClass -
LordShadow - 19.06.2013
Olha, eu atй entendi, ai eu fiz assim no meu
pawn Код:
public OnGameModeInit()
{
SetGameModeText("Blank Script");
AddPlayerClass(280, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(107, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(104, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(109, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(115, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
return 1;
}
pawn Код:
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, 2141.9072,-1038.2037,70.9141);
SetPlayerCameraPos(playerid, 2145.6262,-1036.9430,70.9141);
SetPlayerCameraLookAt(playerid, 2141.9072,-1038.2037,70.9141);
new string[128];
PlayerPlaySound(playerid, 1187, 0.0, 0.0, 0.0);
if (classid == 1)
{
format(string, sizeof(string), "~b~Governo");
GameTextForPlayer(playerid,string,3500,6);
}
else if (classid == 2)
{
format(string, sizeof(string), "~g~~h~Groove Street");
GameTextForPlayer(playerid,string,3500,6);
}
else if (classid == 3)
{
format(string, sizeof(string), "~p~Front Yard Ballas");
GameTextForPlayer(playerid,string,3500,6);
}
else if (classid == 4)
{
format(string, sizeof(string), "~y~~h~Los Santos Vagos");
GameTextForPlayer(playerid,string,3500,6);
}
else if (classid == 5)
{
format(string, sizeof(string), "~g~~h~Varrios Los Aztecas");
GameTextForPlayer(playerid,string,3500,6);
}
return 1;
}
E A Skin 280 que й para ser do grupo "GOVERNO", ela nгo estб definida para nenhum grupo, por que ?
Re: Selecionar Char pela callback RequestClass -
Falcon. - 19.06.2013
Primeiramente vocк nгo precisa usar format para exibir o gametext. Pode-se usar diretamente a string na funзгo:
PHP код:
GameTextForPlayer(playerid, "~b~Governo", 3500, 6);
e o erro ocorreu pois como eu disse, o primeiro id comeзa do
0 e nгo do
1, basta trocar os valores e tudo vai funcionar.
Cumprimentos.
Re: Selecionar Char pela callback RequestClass -
Mteck - 19.06.2013
Eu uso assim
pawn Код:
if(classid >= 0 && classid <= 162) // Assim da Skin 0 atй a skin 162
{
GameTextForPlayer(playerid,"~g~Humanos Sobreviventes",5000,6);
gTeam[playerid] = TEAM_HUMAN;
}
Marcando na init
Re: Selecionar Char pela callback RequestClass -
LordShadow - 19.06.2013
class id й o numero da skin? Nгo tem como criar 2 grupos diferentes com a mesma skin?
Re: Selecionar Char pela callback RequestClass -
Mteck - 19.06.2013
Nгo me lembro se utilizei 2 skins em grupos diferente, mas acho que usei sim, faзa o teste..
Re: Selecionar Char pela callback RequestClass -
Gustavo_Carvalho - 19.06.2013
Vocк pode usar
https://sampwiki.blast.hk/wiki/AddPlayerClassEx.