Сообщений: 538
Тем: 76
Зарегистрирован: Aug 2012
Репутация:
7
"accountId не существует в текущем тексте"
[SRC="csharp"]
public Character GetUpdate(int weapon_primary)
{
try
{
using (var connection = Factory.conn)
{
string updateQuery = @"UPDATE `characters` SET `WEAPON_PRIMARY` = @weapon_primary WHERE `AccountId` IN(@accountId)";
var update = SqlMapper.Execute(connection, updateQuery, new { WEAPON_PRIMARY = weapon_primary, AccountId = accountId });
}
}
}
[/SRC]
Сообщений: 6,450
Тем: 262
Зарегистрирован: Nov 2007
Репутация:
44,165
Ну так откуда ему взяться? Ты только weapon_primary передаёшь.
Да и не понятна мне логика с условием AccountId. Если будет несколько персонажей, то эта пушка установится для всех персонажей учётной записи.
Сообщений: 538
Тем: 76
Зарегистрирован: Aug 2012
Репутация:
7
AccountId это ид аккаунта персонажа, разве его не надо указывать чтобы он сменил оружие только у одного человека, а не у всех?
Сообщений: 6,450
Тем: 262
Зарегистрирован: Nov 2007
Репутация:
44,165
Это понятно, но персонажей может быть от 1 до 9 на одном аккаунте.
Сообщений: 538
Тем: 76
Зарегистрирован: Aug 2012
Репутация:
7
В игре теперь он меняет и ошибок от сервера нету, но в бд значение не меняется
[SRC=csharp]
public Character GetUpdate(int weapon_primary, int id)
{
try
{
using (var connection = Factory.conn)
{
string updateQuery = @"UPDATE `character` SET `WEAPON_PRIMARY` = @weapon_primary WHERE `ID` IN(@id)";
var update = SqlMapper.Execute(connection, updateQuery, new { WEAPON_PRIMARY = weapon_primary, ID = id });
}
}
catch (Exception ex)
{
Log.Error(ex.ToString());
}
return null;
}
[/SRC]
Сообщений: 6,450
Тем: 262
Зарегистрирован: Nov 2007
Репутация:
44,165
Название таблицы character или всё же characters?
[SRC="csharp"]var update = SqlMapper.Execute(connection, updateQuery, new { WEAPON_PRIMARY = weapon_primary, ID = id });
[/SRC]
>>>
[SRC="csharp"]var count = connection.Execute(updateQuery, new { WEAPON_PRIMARY = weapon_primary, ID = id });
[/SRC]
Сообщений: 538
Тем: 76
Зарегистрирован: Aug 2012
Репутация:
7
А использовать в пакете так?
[SRC=csharp]
Character update = CharacterManager.Instance.GetUpdate(character.WEAPON_PRIMARY, character.ID);
[/SRC]
Сообщений: 538
Тем: 76
Зарегистрирован: Aug 2012
Репутация:
7
А разве его не надо никак использовать в пакете PROTOCOL_CHAR_CHANGE_EQUIP_REQ?
Сообщений: 6,450
Тем: 262
Зарегистрирован: Nov 2007
Репутация:
44,165
Всё так, но в данный момент метод Update выполняет сохранение основного оружия у персонажа. А должен сохранять все свойства объекта\модели\сущности Character. Как ты себе видишь обновление второстепенного оружия, холодного, метательного или же имени, класса и умений? Под каждую операцию будет свой Update?