Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

[C.M.D] Телепорт по координатам для new.pwn

Статус
В этой теме нельзя размещать новые ответы.

Valeriy_Skarletti

Ученик
Описание: Команда телепортирует вас в любую точку карты, по заданным вами координатам.

Вот версия команды для новичков в pawno:

1. Идем в паблик OnPlayerCommandText(playerid, cmdtext[]) и в самом начале вставляем следующее:

PHP:
new cmd[128];
new tmp[256];
new string[128];
new idx;
cmd = strtok(cmdtext, idx);
2. Далее в этом же паблике ко всем командам приписываем нашу:

PHP:
if(strcmp(cmd, "/tpcor", true) == 0)
{
	if(IsPlayerConnected(playerid))
	{
		tmp = strtok(cmdtext, idx);
		if(!strlen(tmp))
		{
			SendClientMessage(playerid, 0xFFFFFFAA, "Вводи: /tpcor [x] [y] [z]");
			return 1;
		}
		new coorx;
		coorx = strval(tmp);
		tmp = strtok(cmdtext, idx);
		if(!strlen(tmp))
		{
			SendClientMessage(playerid, 0xFFFFFFAA, "Вводи: /tpcor [x] [y] [z]");
			return 1;
		}
		new coory;
		coory = strval(tmp);
		tmp = strtok(cmdtext, idx);
		if(!strlen(tmp))
		{
			SendClientMessage(playerid, 0xFFFFFFAA, "Вводи: /tpcor [x] [y] [z]");
			return 1;
		}
		new coorz;
		coorz = strval(tmp);
		SetPlayerPos(playerid, coorx,coory,coorz);
		format(string, sizeof(string), "Вы были телепортированны на указанные вами координаты", coorx,coory,coorz);
		SendClientMessage(playerid, 0xFFFFFFAA, string);
	}
	return 1;
}
3. И последний штрих: в самый конец мода вставляем это:

PHP:
strtok(const string[], &index)
{
	new length = strlen(string);
	while ((index < length) && (string[index] <= ' '))
	{
		index++;
	}
	new offset = index;
	new result[20];
	while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
	{
		result[index - offset] = string[index];
		index++;
	}
	result[index - offset] = EOS;
	return result;
}
Вот и все команда готова!

=============================================================================================




Теперь версия команды, для тех кто где то как то что то умеет делать по скриптингу. :bq:

1. В самом начале мода подключаем нужные нам инклюды - вписываем это:
PHP:
#include <sscanf>
#include <zcmd>
2. Далее где нибудь между пабликами вставляем нашу команду:
PHP:
CMD:tpcor(playerid,params[])
{
    if(IsPlayerConnected(playerid))
    {
        new Float:px,Float:py,Float:pz,string[126];
        if(sscanf(params,"fff",px,py,pz))
        if(!px||!py||!pz) return SendClientMessage(playerid, 0xFFFFFFAA, "Вводи: /tpcor [x] [y] [z]");
        SetPlayerPos(playerid,px,py,pz);
        format(string, sizeof(string), "Вы были телепортированны на указанные вами координаты %f | %f | %f",px,py,pz);
        SendClientMessage(playerid, 0xFFFFFFAA, string);
    	return 1;
    }
	return 1;
}
Примечание:
Не пытайтесь впихнуть не впи***мое - Не суйте команду в OnPlayerCommandText(playerid, cmdtext[]) или другие паблики!

Если у кого нет инклюдов sscanf и zcmd то вот держите:

Ну вот и все :) Хочу пожелать всем удачи в ваших начинаниях. ;)

Отдельное спасибо sOflY :df:

P.S. Автор команды не я.

Если остались вопросы по данной теме то пишите в коменты или стучитесь ( skype: Valeriy_Like ) Буду рад помочь. :bf:
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу