Форум Pawn.Wiki - Воплоти мечту в реальность!: баг с командой /setskin - Форум Pawn.Wiki - Воплоти мечту в реальность!

Перейти к содержимому

Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

[ Pawn ]
баг с командой /setskin

#1
Пользователь офлайн   liquidosich 

  • Новичок
  • Вставить ник
  • Раскрыть информацию
Мне нужна команда для изменения скина (и в бд тоже), только чтобы она была доступна для всех и изменяла себе скин, а не другому игроку. Я взял код готовый, но не получается убрать id игрока.

Я новиков в павно, буду благодарен + за помощь.

CMD:setskin(playerid,params[])
{
	if(sscanf(params,"ui",params[0],params[1])) return SCM(playerid,Color_White,"/setskin [ID игрока] [ID скина]");
        if(!IsPlayerConnected(playerid)) return SCM(playerid,-1,"test");
        SetPlayerSkin(params[0],params[1]);
        if(params[1] < 0 || params[1] > 311) return SCM(playerid,Color_White,"ID скина от 1 до 311");
        new mysql_test[144];
	pInfo[params[0]][pSkin] = params[1];
	format(mysql_test, sizeof(mysql_test), "UPDATE users SET Skin = '%i' WHERE Name = '%s'", params[1], pInfo[params[0]][pName]); // делаем строку для запроса
	mysql_query(dbHandle, mysql_test, false); // отправляем звпрос в БД
        return 1;
}

Сообщение отредактировал liquidosich: 21 июня 2025 - 01:28

0

#2
Пользователь офлайн   mentaletion 

  • Местный
  • Вставить ник
  • Раскрыть информацию

Просмотр сообщенияliquidosich (21 июня 2025 - 01:27) писал:

Нажмите сюда, чтобы прочитать это сообщение. [Показать]


CMD:changeskin(playerid, params[]) {
    new skinid;
    if(sscanf(params, "d", skinid)) 
        return SendInfoMessage(playerid, "Используйте /changeskin [id скина]");
    
    // Проверяем допустимый диапазон и запрещаем скин 74
    if(skinid < 1 || skinid > 311 || skinid == 74) 
        return SendErrorMessage(playerid, "Допустимые ID: 1-311, кроме 74");
    
    SetPlayerSkin(playerid, skinid);
    PlayerInfo[playerid][pSkin] = skinid;
    
    new query[128];
    format(query, sizeof(query), 
        "UPDATE `accounts` SET `pSkin` = '%d' WHERE `pID` = '%d' LIMIT 1", 
        PlayerInfo[playerid][pSkin], 
        PlayerInfo[playerid][pID]
    );
    mysql_tquery(dbHandle, query);
    
    return 1;
}


запросы на свои поставишь
1

#3
Пользователь офлайн   liquidosich 

  • Новичок
  • Вставить ник
  • Раскрыть информацию
пасибо большое
0

Поделиться темой:


Страница 1 из 1
  • Вы не можете создать новую тему
  • Вы не можете ответить в тему

1 человек читают эту тему
0 пользователей, 1 гостей, 0 скрытых пользователей


Яндекс.Метрика