PDA

Просмотр полной версии : [Вопрос] по команде /dm



gangzone.ini
15.06.2014, 22:22
Вообщем сделана команда /dm1 - /dm15 и когда Вас убивают на DM то спавнишся на стандартной респе, а не на DM зоне, т.к нету OnPlayerSpawn, помогите сделать что бы спавнился на DM с тем же оружием.
Сама команда:

dcmd_dm1(playerid,params[])
{//DM1
#pragma unused params
SetPlayerTeam(playerid, playerid + 11);
SetPlayerInterior(playerid, 1);
SetPlayerHealth(playerid,100);
new rand = random(sizeof(DeathMatch_one));
SetPlayerPos(playerid, DeathMatch_one[rand][0], DeathMatch_one[rand][1], DeathMatch_one[rand][2]);
new name[256];
new string[256];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "Игрок {33aa33}%s {FFFFFF}телепортировался на DM зону №1 {33aa33}[/dm1]", name);
SendClientMessageToAll(COLOR_WHITE, string);

return 1;}

Salvacore
15.06.2014, 22:32
Вообщем сделана команда /dm1 - /dm15 и когда Вас убивают на DM то спавнишся на стандартной респе, а не на DM зоне, т.к нету OnPlayerSpawn, помогите сделать что бы спавнился на DM с тем же оружием.
Сама команда:

dcmd_dm1(playerid,params[])
{//DM1
#pragma unused params
SetPlayerTeam(playerid, playerid + 11);
SetPlayerInterior(playerid, 1);
SetPlayerHealth(playerid,100);
new rand = random(sizeof(DeathMatch_one));
SetPlayerPos(playerid, DeathMatch_one[rand][0], DeathMatch_one[rand][1], DeathMatch_one[rand][2]);
new name[256];
new string[256];
GetPlayerName(playerid, name, sizeof(name));
format(string, sizeof(string), "Игрок {33aa33}%s {FFFFFF}телепортировался на DM зону №1 {33aa33}[/dm1]", name);
SendClientMessageToAll(COLOR_WHITE, string);

return 1;}

Как игрок спавнится на стандартной респе если ты говоришь нету OnPlayerSpawn?

new name[256]; - Где это видано что ник игрока в 254 символа?
new string[256]; - Тут тоже много получается.

L0ndl3m
15.06.2014, 22:41
В нужную команду присваивайте значение переменной, номера ДМ-зоны:

SetPVarInt(playerid, "dm_zone_id", 1); // Если допустим игрок телепортнётся в 5 дм зону, вместо 1 пишите 5

Далее, создаёте паблик OnPlayerSpawn (как я понял у Вас его нет), и делаете там проверку, в какой зоне находится игрок, всё вместе будет примерно как-то так:


public OnPlayerSpawn(playerid)
{
switch(GetPVarInt(playerid, "dm_zone_id"))
{
case 0:
{
// Стандартный мир
}
case 1:
{
// Код, для попадания в 1 ДМ-Зону, выдачи оружия, и т.п.
}
case 2:
{
// Код, для попадания во 2 ДМ-Зону, выдачи оружия, и т.п.
}
case 3:
{
// Код, для попадания в 3 ДМ-Зону, выдачи оружия, и т.п.
}
// ...
case 10:
{
// Код для попадания в 10 ДМ-Зону, выдачи оружия, и т.п.
}
}

return 1;
}

gangzone.ini
15.06.2014, 23:42
Можно Ваш скайп ?