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

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

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

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

Построение сложных команд на ТМП стрток.

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

Мр.Изя*

Умник
Привет всем. Раньше получалось. Сейчас запор. Допустим. Копирую команду /id. Из мода Самп Роле Плэй 7. Ну не важно, кароче, и получаются сотни ошибок Про Тмп, Кмд, Стрток. Хорошо, я пошёл в начало ОнПлауер КомандТекст. взял там все эти переменные вставил в свой мод. Опять же ещё больше ошибок. Закоментировал некоторые переменные. (Нахер не нужны, типо деньги, и т.д). И осталось 5 ошибок. Примерно такие:
Вот весь паблик:
PHP:
public OnPlayerCommandText(playerid, cmdtext[])
{
//	new string[512];
//	new playermoney;
//	new playerpcash;
//	new sendername[MAX_PLAYER_NAME];
//	new giveplayer[MAX_PLAYER_NAME];
	new cmd[512];
	new tmp[512];
//	new vehicleid = GetPlayerVehicleID(playerid);
	new giveplayer;
//	new moneys;
	new idx;
	if (strcmp(cmdtext, "/en", true) == 0)
    {
		if(zavodis[playerid] == 0)
 		{
			if(GetPlayerVehicleID(playerid) != INVALID_VEHICLE_ID)
			{
				if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
				{
					GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(GetPlayerVehicleID(playerid) ,VEHICLE_PARAMS_ON,VEHICLE_PARAMS_ON,alarm,doors,bonnet,boot,objective);
					zavodis[playerid] = 1;
				}
			}
		}
		else if(zavodis[playerid] == 1)
		{
			if(GetPlayerVehicleID(playerid) != INVALID_VEHICLE_ID)
			{
				if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
				{
					GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
					SetVehicleParamsEx(GetPlayerVehicleID(playerid),VEHICLE_PARAMS_OFF,VEHICLE_PARAMS_OFF,alarm,doors,bonnet,boot,objective);
					zavodis[playerid] = 0;
				}
			}
		}
		return true;
	}
	if(strcmp(cmdtext, "/help", true) == 0)
    {
        new categories[][] = {
            {"Клиентские\n"},
            {"Аккаунт\n"},
            {"Общее\n"},
            {"Фракция\n"},
            {"Работа\n"},
            {"Чаты\n"},
            {"Телефон\n"},
            {"Аренда Авто\n"},
            {"Дом\n"},
            {"Аренда Дома\n"},
            {"Бизнес\n"},
            {"Готовка, Рыбалка\n"},
            {"Лидерка\n"},
            {"Хелперка\n"},
            {"samp0.3d"}
        };
        new dialog[150];
        for(new i; i < sizeof(categories); i++) strcat(dialog, categories[i]);
        ShowPlayerDialog(playerid,1000,DIALOG_STYLE_LIST,"Команды. Выберите категорию:", dialog, "Выбрать", "Закрыть");//диалог замените на свой
        return true;
    }
	if(strcmp(cmd, "/id", true) == 0)
	{
		tmp = strtok(cmdtext, idx);
		if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /id [ник]");
		new target;
		target = ReturnUser(tmp);
		if(IsPlayerConnected(target))
		{
			if(target != INVALID_PLAYER_ID)
			{
				GetPlayerName(target, giveplayer, sizeof(giveplayer));
				format(string, sizeof(string), "%s [%d] ",giveplayer,target);
				SendClientMessage(playerid, COLOR_WHITE, string);
			}
			else
			{
				SendClientMessage(playerid, COLOR_GREY, "[Ошибка] Игрок не найден!");
				return true;
			}
		}
		return true;
	}
	return true;
}
Ошибки:
PHP:
C:\Users\Äåä\Desktop\Mode\gamemodes\Untitled.pwn(1606) : error 017: undefined symbol "strtok"
C:\Users\Äåä\Desktop\Mode\gamemodes\Untitled.pwn(1606) : error 033: array must be indexed (variable "tmp")
C:\Users\Äåä\Desktop\Mode\gamemodes\Untitled.pwn(1609) : error 017: undefined symbol "ReturnUser"
C:\Users\Äåä\Desktop\Mode\gamemodes\Untitled.pwn(1614) : error 035: argument type mismatch (argument 2)
C:\Users\Äåä\Desktop\Mode\gamemodes\Untitled.pwn(1614) : error 035: argument type mismatch (argument 2)
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


5 Errors.
PHP:
Строчки:
1.		tmp = strtok(cmdtext, idx);
2. 		tmp = strtok(cmdtext, idx);
3.		target = ReturnUser(tmp);
4.		GetPlayerName(target, giveplayer, sizeof(giveplayer));
1. Скажите что-нужно добавить вначала, что бы безпроблем вставлять такие команды
2. Скажите ссылку на ХОРОШИЙ урок по ССКАНФ.


---------- Post added at 15:20 ---------- Previous post was at 15:16 ----------

Вставил в конец:
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;
}
Теперь 3 ВАРНИНГА:
PHP:
C:\Users\Äåä\Desktop\Mode\gamemodes\Untitled.pwn(1608) : error 017: undefined symbol "ReturnUser"
C:\Users\Äåä\Desktop\Mode\gamemodes\Untitled.pwn(1613) : error 035: argument type mismatch (argument 2)
C:\Users\Äåä\Desktop\Mode\gamemodes\Untitled.pwn(1613) : error 035: argument type mismatch (argument 2)
C:\Users\Äåä\Desktop\Mode\gamemodes\Untitled.pwn(1799) : warning 219: local variable "string" shadows a variable at a preceding level
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


3 Errors.


---------- Post added at 15:26 ---------- Previous post was at 15:20 ----------

Пришёл к одному Варнингу:)
PHP:
C:\Users\Äåä\Desktop\Mode\gamemodes\Untitled.pwn(1614) : error 017: undefined symbol "ReturnUser"
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


1 Error.
PHP:
		target = ReturnUser(tmp);


---------- Post added at 16:24 ---------- Previous post was at 15:26 ----------

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