Перейти к содержанию
Авторизация  
DenisPavlovich

[Help][Core] Buffer Community

Рекомендуемые сообщения

Добрый вечер.

У меня такой вопрос, на сборке ребеллионов, в бафере "по-умолчанию" при создании схемы бафов, можно добавлять только по одному бафу, т.е. после нажатия на кнопку добавить, мне возвращают таблицу, где нужно снова нажать "добавить баф", это очень неудобно. Долго копал ядро, так и не смог найти то место, где идет возврат.

 

Вот мысли, в которых возможно он есть. Прошу посмотреть и подсказать. Заранее благодарен.

 


public static String buildTable(GCSArray<String> buffIds, int cols_number, int type, int grpId, String grpName)
{
Skill skill;
String bottom = null;
String res = "<table width=600>";
double rows = Math.ceil((double) buffIds.size() / cols_number);
int c = 0;
for(int i = 0; i < (int) rows; i++)
{
res += "<tr>";
for(int j = 0; j < cols_number; j++)
{
if(buffIds.size() > c)
{
skill = SkillTable.getInstance().getInfo(Integer.parseInt(buffIds.get(c)), 1);
if(type == 1)
bottom = "<td width=25><button value=\"$\" action=\"bypass _bbsbuff;buff;" + buffIds.get(c) + ";" + skill.getBaseLevel() + "\" width=25 height=32 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td>";
else if(type == 2)
bottom = "<td width=25><button value=\"Del\" action=\"bypass _bbsbuff;dellbufffrom;" + grpId + ";" + buffIds.get(c) + "\" width=25 height=32 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td>";
else if(type == 3)
bottom = "<td width=25><button value=\"Use\" action=\"bypass _bbsbuff;addbuffingrp;" + grpId + ";" + buffIds.get(c) + ";" + skill.getBaseLevel() + "\" width=25 height=32 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td>";
res += "<td width=200>" + "<center>" + "<table width=200 height=32>" + "<tr>" + "<td width=32><center><img src=icon." + skill.getIcon() + " width=32 height=32></center></td>" + bottom + "<td width=128>" + "<table width=128><tr><td><font color=3293F3>" + skill.getName() + "</font></td></tr><tr><td><font color=F2C202>Уровень: " + skill.getBaseLevel() + "</font></td></tr></table>" + "</td>" + "</tr>" + "</table></center></td>";
}
else
res += "<td width=150><center></center></td>";
c++;
}
res += "</tr>";
}
res += "</table><br>";
return res;
}

 

 

 

 


private void AddBuffInGrp(Player activeChar, int gpIdUse, int buff, int lvl)
{
Connection con = null;
try
{
con = DatabaseFactory.getInstance().getConnection();
PreparedStatement st = con.prepareStatement("SELECT COUNT(*) FROM communitybuff_grp_buffs WHERE charId=? AND GpId=?;");
st.setInt(1, activeChar.getObjectId());
st.setInt(2, gpIdUse);
ResultSet rs = st.executeQuery();
rs.next();
if(rs.getInt(1) <= (Config.BBS_PVP_BUFFER_BUFFS_PER_SET-1))
{
PreparedStatement stAdd = con.prepareStatement("INSERT INTO communitybuff_grp_buffs (charId,GpId,buffid,bufflvl) VALUES (?,?,?,?)");
stAdd.setInt(1, activeChar.getObjectId());
stAdd.setInt(2, gpIdUse);
stAdd.setInt(3, buff);
stAdd.setInt(4, lvl);
stAdd.execute();
EditeBuffGrp(activeChar, gpIdUse);
DbUtils.closeQuietly(stAdd);
}
else
activeChar.sendMessage("Набор не может содержать более " + Config.BBS_PVP_BUFFER_BUFFS_PER_SET + " баффов");
DbUtils.closeQuietly(st, rs);
}
catch(Exception e)
{}
finally
{
DbUtils.closeQuietly(con);
}
}

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрый вечер.

У меня такой вопрос, на сборке ребеллионов, в бафере "по-умолчанию" при создании схемы бафов, можно добавлять только по одному бафу, т.е. после нажатия на кнопку добавить, мне возвращают таблицу, где нужно снова нажать "добавить баф", это очень неудобно. Долго копал ядро, так и не смог найти то место, где идет возврат.

 

Вот мысли, в которых возможно он есть. Прошу посмотреть и подсказать. Заранее благодарен.

 


public static String buildTable(GCSArray<String> buffIds, int cols_number, int type, int grpId, String grpName)
{
Skill skill;
String bottom = null;
String res = "<table width=600>";
double rows = Math.ceil((double) buffIds.size() / cols_number);
int c = 0;
for(int i = 0; i < (int) rows; i++)
{
res += "<tr>";
for(int j = 0; j < cols_number; j++)
{
if(buffIds.size() > c)
{
skill = SkillTable.getInstance().getInfo(Integer.parseInt(buffIds.get(c)), 1);
if(type == 1)
bottom = "<td width=25><button value=\"$\" action=\"bypass _bbsbuff;buff;" + buffIds.get(c) + ";" + skill.getBaseLevel() + "\" width=25 height=32 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td>";
else if(type == 2)
bottom = "<td width=25><button value=\"Del\" action=\"bypass _bbsbuff;dellbufffrom;" + grpId + ";" + buffIds.get(c) + "\" width=25 height=32 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td>";
else if(type == 3)
bottom = "<td width=25><button value=\"Use\" action=\"bypass _bbsbuff;addbuffingrp;" + grpId + ";" + buffIds.get(c) + ";" + skill.getBaseLevel() + "\" width=25 height=32 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td>";
res += "<td width=200>" + "<center>" + "<table width=200 height=32>" + "<tr>" + "<td width=32><center><img src=icon." + skill.getIcon() + " width=32 height=32></center></td>" + bottom + "<td width=128>" + "<table width=128><tr><td><font color=3293F3>" + skill.getName() + "</font></td></tr><tr><td><font color=F2C202>Уровень: " + skill.getBaseLevel() + "</font></td></tr></table>" + "</td>" + "</tr>" + "</table></center></td>";
}
else
res += "<td width=150><center></center></td>";
c++;
}
res += "</tr>";
}
res += "</table><br>";
return res;
}

 

 

 

 


private void AddBuffInGrp(Player activeChar, int gpIdUse, int buff, int lvl)
{
Connection con = null;
try
{
con = DatabaseFactory.getInstance().getConnection();
PreparedStatement st = con.prepareStatement("SELECT COUNT(*) FROM communitybuff_grp_buffs WHERE charId=? AND GpId=?;");
st.setInt(1, activeChar.getObjectId());
st.setInt(2, gpIdUse);
ResultSet rs = st.executeQuery();
rs.next();
if(rs.getInt(1) <= (Config.BBS_PVP_BUFFER_BUFFS_PER_SET-1))
{
PreparedStatement stAdd = con.prepareStatement("INSERT INTO communitybuff_grp_buffs (charId,GpId,buffid,bufflvl) VALUES (?,?,?,?)");
stAdd.setInt(1, activeChar.getObjectId());
stAdd.setInt(2, gpIdUse);
stAdd.setInt(3, buff);
stAdd.setInt(4, lvl);
stAdd.execute();
EditeBuffGrp(activeChar, gpIdUse);
DbUtils.closeQuietly(stAdd);
}
else
activeChar.sendMessage("Набор не может содержать более " + Config.BBS_PVP_BUFFER_BUFFS_PER_SET + " баффов");
DbUtils.closeQuietly(st, rs);
}
catch(Exception e)
{}
finally
{
DbUtils.closeQuietly(con);
}
}

 

 

Разве ребиллион это полноценная сборка?

Регион занимается нею, к нему за советом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Разве ребиллион это полноценная сборка?

Регион занимается нею, к нему за советом.

 

я имел ввиду исходники были ребов.

Кто такой регион? можно ссыль?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Был бы весь код бафера, сказал бы точнее, но: при нажатии на кнопку добавить баф идет бипас к баферу - как я понял это -

addbuffingrp

, и в обработке этого бипаса вызывается функция добавления бафа, так от после нее нужно поставить открытие того же окна.

Дашь полный код, скажу точнее

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Был бы весь код бафера, сказал бы точнее, но: при нажатии на кнопку добавить баф идет бипас к баферу - как я понял это -

addbuffingrp

, и в обработке этого бипаса вызывается функция добавления бафа, так от после нее нужно поставить открытие того же окна.

Дашь полный код, скажу точнее

 

Полный код будет длинный тут)

 

Могу показать\дать. Спишемся в скайпе? keni_entertein_me

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Извини был занят, вечером напишу в скайп

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

удали ребов, сборка кривая

 

Но это же сырки...

Посоветуй норм сурс тогда :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Лучше хф ребелион и не найдешь

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

EditeBuffGrp

Часть этого кода дай и вообще в лс кинь сам файл.

Изменено пользователем Saick

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...