Suriko 0 Опубликовано 4 апреля, 2016 Ребят, помогите, при покупке хиро статуса всё ок, но когда человек перезаходит в игру хиро пропадает, не знаю что делать ошибок в консоле нету, видел тему на форуме но не понял ничего, объясните плиз package services; import java.util.ArrayList;import java.util.List;import core.gameserver.Config;import core.gameserver.data.htm.HtmCache;import core.gameserver.data.xml.holder.ItemHolder;import core.gameserver.model.Player;import core.gameserver.model.entity.Hero;import core.gameserver.model.entity.olympiad.Olympiad;import core.gameserver.network.l2.components.SystemMsg;import core.gameserver.network.l2.s2c.SkillList;import core.gameserver.network.l2.s2c.SocialAction;import core.gameserver.scripts.Functions;import core.gameserver.templates.StatsSet;public class BuyHeroStatus extends Functions{public void list(){Player player = getSelf();if(!Config.SERVICES_HERO_SELL_ENABLED){show(HtmCache.getInstance().getNotNull("npcdefault.htm", player), player);return;}String html = null;html = HtmCache.getInstance().getNotNull("scripts/services/BuyHero.htm", player);String add = "";for(int i = 0; i < Config.SERVICES_HERO_SELL_DAY.length; i++)add += " + "for " + Config.SERVICES_HERO_SELL_DAY + //" days - " + Config.SERVICES_HERO_SELL_PRICE + //" " + ItemHolder.getInstance().getTemplate(Config.SERVICES_HERO_SELL_ITEM).getName() + "";html = html.replaceFirst("%toreplace%", add);show(html, player);}public void get(String[] param){Player player = getSelf();if(!Config.SERVICES_HERO_SELL_ENABLED){player.sendMessage(player.isLangRus() ? "Данный сервис недоступен." : "This service is not available.");return;}if(player.isHero()){player.sendMessage(player.isLangRus() ? "Вы уже являетесь Героем." : "You already are a hero.");return;}int i = Integer.parseInt(param[0]);if((Functions.getItemCount(player, Config.SERVICES_HERO_SELL_ITEM) >= Config.SERVICES_HERO_SELL_PRICE)){if(!player.isNoble()){Olympiad.addNoble(player);player.setNoble(true);player.updateNobleSkills();}player.setVar("HeroPeriod", (System.currentTimeMillis() + 60 * 1000 * 60 * 24 * Config.SERVICES_HERO_SELL_DAY), -1);Functions.removeItem(player, Config.SERVICES_HERO_SELL_ITEM, Config.SERVICES_HERO_SELL_PRICE);StatsSet hero = new StatsSet();hero.set(Olympiad.CLASS_ID, player.getBaseClassId());hero.set(Olympiad.CHAR_ID, player.getObjectId());hero.set(Olympiad.CHAR_NAME, player.getName());hero.set(Hero.ACTIVE, 1);List heroesToBe = new ArrayList();heroesToBe.add(hero);Hero.getInstance().computeNewHeroes(heroesToBe);player.setHero(true);Hero.addSkills(player);player.broadcastPacket(new SocialAction(player.getObjectId(), 16));player.updatePledgeClass();player.sendPacket(new SkillList(player));player.broadcastUserInfo(true);}elseplayer.sendPacket(SystemMsg.INCORRECT_ITEM_COUNT);}} Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
gvb 666 Опубликовано 4 апреля, 2016 Ребят, помогите, при покупке хиро статуса всё ок, но когда человек перезаходит в игру хиро пропадает, не знаю что делать ошибок в консоле нету, видел тему на форуме но не понял ничего, объясните плиз package services; import java.util.ArrayList; import java.util.List; import core.gameserver.Config; import core.gameserver.data.htm.HtmCache; import core.gameserver.data.xml.holder.ItemHolder; import core.gameserver.model.Player; import core.gameserver.model.entity.Hero; import core.gameserver.model.entity.olympiad.Olympiad; import core.gameserver.network.l2.components.SystemMsg; import core.gameserver.network.l2.s2c.SkillList; import core.gameserver.network.l2.s2c.SocialAction; import core.gameserver.scripts.Functions; import core.gameserver.templates.StatsSet; public class BuyHeroStatus extends Functions { public void list() { Player player = getSelf(); if(!Config.SERVICES_HERO_SELL_ENABLED) { show(HtmCache.getInstance().getNotNull("npcdefault.htm", player), player); return; } String html = null; html = HtmCache.getInstance().getNotNull("scripts/services/BuyHero.htm", player); String add = ""; for(int i = 0; i < Config.SERVICES_HERO_SELL_DAY.length; i++) add += " + "for " + Config.SERVICES_HERO_SELL_DAY + // " days - " + Config.SERVICES_HERO_SELL_PRICE + // " " + ItemHolder.getInstance().getTemplate(Config.SERVICES_HERO_SELL_ITEM).getName() + " "; html = html.replaceFirst("%toreplace%", add); show(html, player); } public void get(String[] param) { Player player = getSelf(); if(!Config.SERVICES_HERO_SELL_ENABLED) { player.sendMessage(player.isLangRus() ? "Данный сервис недоступен." : "This service is not available."); return; } if(player.isHero()) { player.sendMessage(player.isLangRus() ? "Вы уже являетесь Героем." : "You already are a hero."); return; } int i = Integer.parseInt(param[0]); if((Functions.getItemCount(player, Config.SERVICES_HERO_SELL_ITEM) >= Config.SERVICES_HERO_SELL_PRICE)) { if(!player.isNoble()) { Olympiad.addNoble(player); player.setNoble(true); player.updateNobleSkills(); } player.setVar("HeroPeriod", (System.currentTimeMillis() + 60 * 1000 * 60 * 24 * Config.SERVICES_HERO_SELL_DAY), -1); Functions.removeItem(player, Config.SERVICES_HERO_SELL_ITEM, Config.SERVICES_HERO_SELL_PRICE); StatsSet hero = new StatsSet(); hero.set(Olympiad.CLASS_ID, player.getBaseClassId()); hero.set(Olympiad.CHAR_ID, player.getObjectId()); hero.set(Olympiad.CHAR_NAME, player.getName()); hero.set(Hero.ACTIVE, 1); List heroesToBe = new ArrayList(); heroesToBe.add(hero); Hero.getInstance().computeNewHeroes(heroesToBe); player.setHero(true); Hero.addSkills(player); player.broadcastPacket(new SocialAction(player.getObjectId(), 16)); player.updatePledgeClass(); player.sendPacket(new SkillList(player)); player.broadcastUserInfo(true); } else player.sendPacket(SystemMsg.INCORRECT_ITEM_COUNT); } } Видимо в базе значение не меняет, хиро статус дает, но не сохраняет. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Suriko 0 Опубликовано 4 апреля, 2016 Видимо в базе значение не меняет, хиро статус дает, но не сохраняет. И что делать? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
genokk22 174 Опубликовано 5 апреля, 2016 (изменено) Смотреть конфиг сервиса покупки Геройства, смотреть включено ли в конфиге сохранение статуса Геройства в БД (Баду Данных). Изменено 5 апреля, 2016 пользователем genokk22 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Suriko 0 Опубликовано 5 апреля, 2016 Смотреть конфиг сервиса покупки Геройства, смотреть включено ли в конфиге сохранение статуса Геройства в БД (Баду Данных). Ну я же наверное сюда и написал что бы мне помогли не так ли? А так я и сам знаю что что-то в конфиге Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты