Просмотр полной версии : Ищу человека для написания квеста
Ищу человека для написания квеста для сборки nextgen. В самом квесте нужно сделать, чтобы заносилось в БД логина очки
Solution
14.04.2023, 00:39
Напиши адекватное тз и пиши в личку
Кто поможет? а то Solution (https://forum.antichat.xyz/members/894690/) пропал куда-то
Кто поможет? а то Solution (https://forum.antichat.xyz/members/894690/) пропал куда-то
шансы на помощь возрастут сразу после того, как тут появится ТЗ самого квеста
Делаю квест, в котором при нажатии строчки добавляется +1 очко в таблицу account в графу l2money (короче сколько итемовв столько и занесётся)
я прописал так:
mysql.setEx(L2DatabaseFactory.getInstance(), "UPDATE `accounts` SET `l2money` = `l2money` + 1 WHERE login = '" + activeChar.getAccountName() + "'");
Он не добавляет, потому что в nextgen_game нет таблицы account
А как сделать чтобы отправлялось в nextgen_login?
Пробовал так:
mysql.setEx(LoginServerCommunication.getInstance() , "UPDATE `accounts` SET `l2money` = `l2money` + 1 WHERE login = '" + activeChar.getAccountName() + "'");
Но он ругается на setEx
Делаю квест, в котором при нажатии строчки добавляется +1 очко в таблицу account в графу l2money (короче сколько итемовв столько и занесётся)
я прописал так:
mysql.setEx(L2DatabaseFactory.getInstance(), "UPDATE `accounts` SET `l2money` = `l2money` + 1 WHERE login = '" + activeChar.getAccountName() + "'");
Он не добавляет, потому что в nextgen_game нет таблицы account
А как сделать чтобы отправлялось в nextgen_login?
Пробовал так:
mysql.setEx(LoginServerCommunication.getInstance() , "UPDATE `accounts` SET `l2money` = `l2money` + 1 WHERE login = '" + activeChar.getAccountName() + "'");
Но он ругается на setEx
Я конечно не разбираюсь, но что мешает залить все таблицы в одну базу, а не разбивать их на несколько?
Но он ругается на setEx
А ругается как? матом?
Почему нужно вытягивать инфу?
Делаю квест, в котором при нажатии строчки добавляется +1 очко в таблицу account в графу l2money (короче сколько итемовв столько и занесётся)
я прописал так:
mysql.setEx(L2DatabaseFactory.getInstance(), "UPDATE `accounts` SET `l2money` = `l2money` + 1 WHERE login = '" + activeChar.getAccountName() + "'");
Он не добавляет, потому что в nextgen_game нет таблицы account
А как сделать чтобы отправлялось в nextgen_login?
Пробовал так:
mysql.setEx(LoginServerCommunication.getInstance() , "UPDATE `accounts` SET `l2money` = `l2money` + 1 WHERE login = '" + activeChar.getAccountName() + "'");
Но он ругается на setEx
так нельзя?
mysql.setEx(L2DatabaseFactory.getInstance("nextgen_login"), "UPDATE nextgen_login.accounts SET l2money = l2money + 1 WHERE login = '" + activeChar.getAccountName() + "'");
Gaikotsu
15.05.2023, 04:29
В подобных ситуациях вобще по идее надо все делать через пакеты которыми обмениваются логин и гейм.
Т.е. гейм шлет пакет с нужными данными, логин его принимает и делает все что необходимо.
Чисто для примера подобное взаимодействие в овере на примере управления данными премиума:
гейм шлет логину пакет l2p\gameserver\loginservercon\gspackets\BonusReque st
логин на это реагирует пакетом l2p\loginserver\gameservercon\gspackets\BonusReque st, в котором вносит изменения в бд логина
Ну и если сервер один, то можно и не лезть в бд логина если надо что-то общее для всего акка писать, а просто завести новую таблицу в гейме, куда складывать все переменные общие для аккаунта. ну вобщем типа account_variables, аналог character_variables. Подобное может не раз пригодится для разных ситуаций.
У меня у самого примерно так и сделано - кроме стандартной таблицы для хранения разных перменных персонажа есть еще таблицы для хранения переменных аккаунта и переменных клана.
так нельзя?
1. ERROR in C:\Users\Администратор\..... (at line 44)
mysql.setEx(L2DatabaseFactory.getInstance("nextgen_login"), "UPDATE `nextgen_login.accounts` SET `l2money` = `l2money` + 1 WHERE `login` = '" + activeChar.getAccountName() + "'");
The method getInstance() in the type L2DatabaseFactory is not applicable for the arguments (String)
ругается на getInstance
Bloomfield
15.05.2023, 11:50
1. ERROR in C:\Users\Администратор\..... (at line 44)
mysql.setEx(L2DatabaseFactory.getInstance("nextgen_login"), "UPDATE `nextgen_login.accounts` SET `l2money` = `l2money` + 1 WHERE `login` = '" + activeChar.getAccountName() + "'");
The method getInstance() in the type L2DatabaseFactory is not applicable for the arguments (String)
ругается на getInstance
ссылку на исходники дай, погляжу
ссылку на исходники дай, погляжу
l2nextgen_last_7577.zip (https://drive.google.com/file/d/1It6Lf99rUSVqPj8d4tXNWti3LUx7KEs6/view?usp=share_link)
drive.google.com
1. ERROR in C:\Users\Администратор\..... (at line 44)
mysql.setEx(L2DatabaseFactory.getInstance("nextgen_login"), "UPDATE `nextgen_login.accounts` SET `l2money` = `l2money` + 1 WHERE `login` = '" + activeChar.getAccountName() + "'");
The method getInstance() in the type L2DatabaseFactory is not applicable for the arguments (String)
ругается на getInstance
добавь поддержку String для getInstance в L2DatabaseFactory
добавь поддержку String для getInstance в L2DatabaseFactory
Да уже додумался. Сейчас попробую и отпишусь
Да уже додумался. Сейчас попробую и отпишусь
Код:
15/05/23 12:26:13 WARN [GamePacket-TE[1]] l2n.database.utils.mysql mysql: #setEx could not execute query 'UPDATE `nextgen_login.accounts` SET `l2money` = `l2money` + 1 WHERE `login` = 'administrator'':
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorEx ception: Table 'nextgen_game.nextgen_login.accounts' doesn't exist
добавил метод
Код:
}
public static L2DatabaseFactory getInstance(String string) {
// TODO Auto-generated method stub
return null;
}
и всё так же выдаёт ошибку
MasterJoke
15.05.2023, 16:09
У тебя же написано что nextgen_game.nextgen_login.accounts' doesn't exist отсутствует
У тебя же написано что nextgen_game.nextgen_login.accounts' doesn't exist отсутствует
Вот именно. Что в nextgen_game нет таблиц nextgen_login.account
Ребят я поэтому и прошу платную помощь
А ругается как? матом?
Почему нужно вытягивать инфу?
Ну первым аргументом он ждет L2DatabaseFactory, а получает LoginServerCommunication
Bloomfield
16.05.2023, 06:22
Ну первым аргументом он ждет L2DatabaseFactory, а получает LoginServerCommunication
который вообще коннектится к гейму, по идее, надо выводить еще один инстант под логин, и подключаться уже к нему (или пихать все в один).
ну или как предложили выше - сделать адекватно, с пакетами
который вообще коннектится к гейму, по идее, надо выводить еще один инстант под логин, и подключаться уже к нему (или пихать все в один).
ну или как предложили выше - сделать адекватно, с пакетами
Поможешь?
Bloomfield
16.05.2023, 10:26
Поможешь?
я могу взяться, но скорее всего я займусь этим только ближе к выходным (если еще чем-нибудь не нагрузят на основной работе), поэтому если терпит - заберу
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot