Вся активность
Лента обновляется автоматически
- Вчера
-
@Sten Developer, покажите, куда вы добавили вывод сообщения.
- 3 ответа
-
- скриптинг crmp
- скриптинг крмп
- (и ещё 9 тегов)
-
@ddrgtagfon Очень гениальный ответ
- 3 ответа
-
- скриптинг crmp
- скриптинг крмп
- (и ещё 9 тегов)
-
руками, мозгом, интелектом и божьей помощью
- 3 ответа
-
- скриптинг crmp
- скриптинг крмп
- (и ещё 9 тегов)
-
king1337j присоединился к сообществу
-
Объясню всю ситуацию, пишу систему смерти игрока но она не работает. Решил по приколу написать туда обычный вывод текста SCM(playerid, COLOR_RED, "Вы умерли"); Но однако после смерти текст не выводиться. Не работает абсолютно все. Кто знает как решить эту проблему?
- 3 ответа
-
- скриптинг crmp
- скриптинг крмп
- (и ещё 9 тегов)
-
montana присоединился к сообществу
-
Sten Developer присоединился к сообществу
-
Jaroslav присоединился к сообществу
-
izuro присоединился к сообществу
-
@ddrgtagfon Вот за кого я голосовал!!!!
- 5 ответов
-
- ошибка samp
- ошибка crmp
- (и ещё 11 тегов)
-
Cawfee выставил положительную репутацию ответ на вопрос: Как написать server_cfg.ini
-
@angel_sinvays лично знаком с Адольфом, хороший человек, так бы не поступил.
- 5 ответов
-
- ошибка samp
- ошибка crmp
- (и ещё 11 тегов)
-
Yandex_Shirogane выставил положительную репутацию ответ на вопрос: Как написать server_cfg.ini
-
Напоминает Гитлера...
- 5 ответов
-
- ошибка samp
- ошибка crmp
- (и ещё 11 тегов)
-
щас бы сталин расстрелять крикнул
- 5 ответов
-
- ошибка samp
- ошибка crmp
- (и ещё 11 тегов)
-
Хороший способ дрессировки. Спасибо, но не нужно: могу и сам себе поставить. К сожалению, без кода не могу сказать, что вы не так сделали.
- 5 ответов
-
- ошибка samp
- ошибка crmp
- (и ещё 11 тегов)
-
Я не могу понять в чем ошибка помогите пожалуйста C:\Users\Deze{s\Desktop\arzdd\gamemodes\arizonarp.pwn(50864) : error 037: invalid string (possibly non-terminated string) Pawn compiler 3.10.8 Copyright (c) 1997-2006, ITB CompuPhase 1 Error. Уже почитал Что в этой строке мне просто нужно было 2 запятые поставить,Кто первый ответит тому положительный оставлю
- 5 ответов
-
- ошибка samp
- ошибка crmp
- (и ещё 11 тегов)
- Последняя неделя
-
Уфф хорошие вы разработчики ребята, допускаете ошибку даже в регистрации)) Не имею понятия зачем вы позиционируете себя хорошими разработчиками если мод полон банальных багов, для новичков точно не подойдёт)
-
Можете докапаться до истины и стать тем самым хорошим человеком, который поделится подробным мануалом. Уверяю: народ вас не забудет.
- 6 ответов
-
- скриптинг самп
- скриптинг samp
- (и ещё 9 тегов)
-
@moffes, не совсем. Идея в том, чтобы можно было сопоставить данные из таблиц users и admins на основе общего поля (идентификатора аккаунта) через операторы соединения (JOIN). Таблица users должна иметь следующие столбцы: id (уникальный идентификатор аккаунта). name. password. sex. skin. money. regip. lastip. Обратите внимание на отсутствие столбца admin! Таблица admins должна иметь следующие столбцы: id (уникальный номер записи). accountid (уникальный идентификатор аккаунта, аналогичный полю id таблицы users. password. level. Теперь для выдачи прав администратора игроку нужно создать новую запись в таблице admins. Для изменения текущих прав администратора нужно, соответственно, изменить существующую запись. Удаление записи влечет лишение игрока прав администратора. Для того, чтобы при подключении игрока к серверу одним запросом получить всю информацию как из таблицы users, так и из таблицы admins, нужно соединить обе этих таблицы по столбцу admins. Например, вот так: "SELECT * FROM users LEFT JOIN admins ON users.id = admins.accountid WHERE users.name = '%s' and users.password = '%s'", PlayerInfo[playerid][pAccountID], PlayerInfo[playerid][pPassword] Пример выше очень примитивен и не учитывает тот факт, что, скажем, хранение паролей в базе данных "как есть" мягко говоря плохое решение.
- 3 ответа
-
- скриптинг crmp
- скриптинг крмп
- (и ещё 9 тегов)
-
Cawfee выставил положительную репутацию ответ на вопрос: Система аксессуаров
-
@Rumi Channel, все верно: когда вы выходите из здания, вы попадаете на пикап, через который осуществляется вход. Так вы попадаете внутрь здания на координатах пикапа, через который осуществляется выход, - так вас возвращает обратно на улицу из здания. Раньше эту проблему решали путем ввода смещения при входе/выходе из здания (в SetPlayerPos указываете координаты пикапа и прибавляете по осям x и y небольшое смещение). Далее, поскольку иногда решение из пункта 1 приводило к тому, что игрок оказывался в стене здания или даже за его пределами, в массивах хранили не две точки (входа и выхода), а четыре (точка перехода внутрь, точка появления внутри, точка перехода наружу, точка появления снаружи). На сегодняшний день большинство проектов вновь вернулись к реализованному изначально (аналогично вашему) решению, но для перехода (отработки действия пикапа) стало нужно нажимать какую-нибудь клавишу (например, ALT). Что из перечисленного выбирать - решать вам.
- 1 ответ
-
- samp
- san andreas
- (и ещё 9 тегов)
-
Winsyif присоединился к сообществу
-
@Yandex_Shirogane, выше вам привели в пример две прекрасные библиотеки, примеры работы с которыми присутствуют на просторах сети Интернет. На этой основе вы попробовали сделать чтение каких-нибудь параметров из конфигурационного файла? Либо, если за минувшую неделю уже все сделали сами, мы порадуемся за вас и разойдемся
- 5 ответов
-
- скриптинг samp
- сан андреас
- (и ещё 4 тегов)
-
Ради всего святого, не храните так данные в MySQL. Пересматривайте архитектуру вашей базы данных таким образом, чтобы каждому из перечисленных спецификаторов соответствовал свой столбец в таблице базы данных. В идеале создаете таблицу accessories, которая будет включать следующие поля: id (порядковый номер записи (первичный ключ, уникальное значение). accountid (ID аккаунта игрока, для которого предназначена текущая запись (первичный ключ). accessoryid (ID аксессуара). boneid (видимо, идентификатор части тела). fOffsetX. fOffsetY. fOffsetZ. fRotX. fRotY. fRotZ. fScaleX. fScaleY. fScaleZ. Теперь для того, чтобы проверить, есть ли свободные слоты у игрока, вы просто подсчитываете количество строк, удовлетворяющих условию: "ID аккаунта эквивалентно идентификатору аккаунта рассматриваемого игрока"): если их больше-равно четырем, значит свободных слотов нет. Ну, и для отображения всех аксессуаров просто загружаете на основе того же условия все строки из базы данных. Такой подход способствует не только развитию правильной архитектуре в вашей базе данных, но и вносит некую гибкость: так, например, вы можете для некоторых игроков делать лимит по слотам больше (скажем, для игроков с VIP-статусом, будь они не ладны). Либо можете вовсе отказаться от лимитов - вас теперь не ограничивает ничего. Для подсчета используйте возможности SQL-запросов - ни в коем случае не загружайте все-все записи, чтобы потом их посчитать на стороне сервера. Далее приведен пример. "SELECT COUNT(id) FROM acessories WHERE accountid = %d", PlayerInfo[playerid][pAccountID] Поправите все оговоренное выше убедитесь в работоспособности выдачи, сохранения и загрузки - рассмотрим следующую обозначенную вами проблему. upd. Пока писал это сообщение, пользователь @moffes вместил в одно предложение все то, о чем сказал и я. Здорово, когда мысли людей сходятся. И вам, автор, звоночек, что такое решение действительно правильнее и лучше по многим факторам.
-
@Yandex_Shirogane используй mxINI
- 5 ответов
-
- скриптинг samp
- сан андреас
- (и ещё 4 тегов)
-
crmp mobile? уточняй
- 2 ответа
-
- скриптинг самп
- crmp
- (и ещё 9 тегов)
-
Создай таблицу именно для акссесуаров, легче будет
-
moffes подписался на makeadmin
-
Если я правильно понял, то: Создать в таблицу admins: mysql_format(mysql, query, sizeof query, "INSERT INTO admins (name, password, level) VALUES (%s, %d, '%d')", name, password, level); mysql_query(mysql, query, false); Изменить в Users: mysql_format(mysql, query, sizeof query, "UPDATE users SET admin=%d", admin); mysql_query(mysql, query, false); только все замени под себя Если я все же правильно тебя понял, то нужно сделать проверку на то, есть ли уже в admins строка
- 3 ответа
-
- скриптинг crmp
- скриптинг крмп
- (и ещё 9 тегов)
-
@Surfer_Selectrum, это называется избыточность: вы в двух таблицах храните и уровень прав администратора, и имя пользователя. В вашем случае правильнее хранить в столбце admin таблицы users идентификатор дескриптора (описателя) прав администратора в таблице admins. Тогда таблица admins не будет содержать столбец name, а таблица users в столбце admin не будет хранить уровень прав администратора текущего пользователя. Тем не менее, дабы все-таки ответить на ваш вопрос, сообщаю, что в приведенном вами фрагменте кода отсутствуют какие-либо функции для записи данных в базу данных. Возможно, InfoPlayer какой-то навороченный макрос, а может быть сохранение текущих данных в базу данных осуществляется по флагу от какого-нибудь таймера, либо по событию.
- 3 ответа
-
- скриптинг crmp
- скриптинг крмп
- (и ещё 9 тегов)
-
moffes присоединился к сообществу
-
Surfer_Selectrum подписался на makeadmin
-
здравствуйте, подскажите как сделать так, чтобы команда /makeadmin после назначения игрока на админа, или повышение админа, добавляла в базу данных админку игроку, чтобы в таблице users меняла уровень админки, а в таблице admins добавляла игрока и также изменяла уровень. Code: CMD:makeadmin(playerid, params[]) { new string[128]; if(GetAdmin(playerid, adminLogin) == false) return SCM(playerid, 0xA3A3A3FF, "{C20000}[Ошибка]"C_GREY" Вы не являетесь администратором"); if(GetAdmin(playerid, adminLevel) < 6) return SCM(playerid, 0xA3A3A3FF, "{C20000}[Ошибка]"C_GREY" Вы не можете использовать данную команду."); if(sscanf(params, "ii", params[0], params[1])) return SCM(playerid, 0xA3A3A3AA, "{C20000}[Ошибка]"C_GREY" Введите: /makeadmin [ID] [Level]."); if(!IsPlayerConnected(params[0])) return SCM(playerid, 0xA3A3A3FF, "{C20000}[Ошибка]"C_GREY" Данный игрок не в сети!"); if(params[1] < 0 || params[1] > 8) return SCM(playerid, 0xA3A3A3FF, "{C20000}[Ошибка]"C_GREY" Уровень администратора [0-8]"); InfoPlayer[params[0]][pAdmin] = params[1]; format(string, sizeof(string), "Администратор %s изменил ваш уровень администратора на: %d", InfoPlayer[playerid][pName], params[1]); SCM(params[0], 0xFFFFFFAA, string); return true; } Screens - click
- 3 ответа
-
- скриптинг crmp
- скриптинг крмп
- (и ещё 9 тегов)
-
Surfer_Selectrum присоединился к сообществу
-
@dante34538 дай пж эти файлы
-
erjik присоединился к сообществу
-
kitbs присоединился к сообществу
-
Доброго времени суток! Я основатель проекта New York Life. Ищу 3д модельера для главной степени реализации моего проекта, моей идеи. Необходимо создать город Нью-Йорк, естественно, в минималистичном размере для GTA:SA. Прошу писать мне и предоставлять ваше портфолио, ваши работы сразу, дабы не тратить ни ваше, ни моё время. Для связи, мой тг — @McReesberg
-
UP