Advertisement
Guest User

Untitled

a guest
Mar 11th, 2012
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 20.11 KB | None | 0 0
  1. package services.community;
  2.  
  3. import l2ft.gameserver.Config;
  4. import l2ft.gameserver.data.htm.HtmCache;
  5. import l2ft.gameserver.handler.bbs.CommunityBoardManager;
  6. import l2ft.gameserver.handler.bbs.ICommunityBoardHandler;
  7. import l2ft.gameserver.dao.CommunityBufferDAO;
  8. import l2ft.gameserver.model.ManageBbsBuffer;
  9. import l2ft.gameserver.model.ManageBbsBuffer.SBufferScheme;
  10. import l2ft.gameserver.model.Player;
  11. import l2ft.gameserver.model.Summon;
  12. import l2ft.gameserver.model.Effect;
  13. import l2ft.gameserver.model.Skill;
  14. import l2ft.gameserver.model.base.TeamType;
  15. import l2ft.gameserver.tables.SkillTable;
  16. import l2ft.gameserver.scripts.Events;
  17. import l2ft.gameserver.skills.effects.EffectTemplate;
  18. import l2ft.gameserver.stats.Env;
  19. import l2ft.gameserver.network.l2.s2c.ShowBoard;
  20. import l2ft.gameserver.scripts.Functions;
  21. import l2ft.gameserver.scripts.ScriptFile;
  22. import l2ft.gameserver.database.DatabaseFactory;
  23. import l2ft.gameserver.utils.BbsUtil;
  24.  
  25. import java.sql.Connection;
  26. import java.sql.PreparedStatement;
  27. import java.sql.ResultSet;
  28. import java.util.*;
  29.  
  30. import org.slf4j.Logger;
  31. import org.slf4j.LoggerFactory;
  32.  
  33. public class ManageBuffer extends Functions implements ScriptFile, ICommunityBoardHandler {
  34.  
  35. static final Logger _log = LoggerFactory.getLogger(ManageBuffer.class);
  36.  
  37. @Override
  38. public void onLoad(){
  39. if(Config.COMMUNITYBOARD_ENABLED && Config.COMMUNITYBOARD_BUFFER_ENABLED){
  40. _log.info("CommunityBoard: Buffer Community service loaded.");
  41. CommunityBufferDAO.getInstance().select();
  42. CommunityBoardManager.getInstance().registerHandler(this);
  43. }
  44. }
  45.  
  46. @Override
  47. public void onReload(){
  48. if(Config.COMMUNITYBOARD_ENABLED && Config.COMMUNITYBOARD_BUFFER_ENABLED){
  49. ManageBbsBuffer.getSchemeList().clear();
  50. CommunityBoardManager.getInstance().removeHandler(this);
  51. }
  52. }
  53.  
  54. @Override
  55. public void onShutdown(){}
  56.  
  57. @Override
  58. public String[] getBypassCommands(){
  59. return new String[] {
  60. "_bbsbuff",
  61. "_bbsbaim",
  62. "_bbsbsingle",
  63. "_bbsbsave",
  64. "_bbsbrestore",
  65. "_bbsbdelete",
  66. "_bbsbregen",
  67. "_bbsbcansel",
  68. "_bbsblist"
  69. };
  70. }
  71.  
  72. @Override
  73. public void onBypassCommand(Player player, String bypass){
  74. String html = "";
  75.  
  76. if(!CheckCondition(player))
  77. return;
  78.  
  79. if(bypass.startsWith("_bbsbuff"))
  80. {
  81. StringTokenizer st2 = new StringTokenizer(bypass, ";");
  82. String[] mBypass = st2.nextToken().split(":");
  83. ShowHtml(mBypass.length == 1 ? "index" : mBypass[1], player);
  84. }
  85. if(bypass.startsWith("_bbsblist"))
  86. {
  87. StringTokenizer st2 = new StringTokenizer(bypass, ";");
  88. String[] mBypass = st2.nextToken().split(":");
  89. int pice = 0;
  90. if (Config.COMMUNITYBOARD_BOARD_ALT_ENABLED)
  91. {
  92. if (player.getLevel() < 20)
  93. pice = Config.COMMUNITYBOARD_BUFF_PICE_NG_GR;
  94. else if (player.getLevel() >= 20 && player.getLevel() <40)
  95. pice = Config.COMMUNITYBOARD_BUFF_PICE_D_GR;
  96. else if (player.getLevel() >= 40 && player.getLevel() <52)
  97. pice = Config.COMMUNITYBOARD_BUFF_PICE_C_GR;
  98. else if (player.getLevel() >= 52 && player.getLevel() <61)
  99. pice = Config.COMMUNITYBOARD_BUFF_PICE_B_GR;
  100. else if (player.getLevel() >= 61 && player.getLevel() <76)
  101. pice = Config.COMMUNITYBOARD_BUFF_PICE_A_GR;
  102. else if (player.getLevel() >= 76 && player.getLevel() <80)
  103. pice = Config.COMMUNITYBOARD_BUFF_PICE_S_GR;
  104. else if (player.getLevel() >= 80 && player.getLevel() <84)
  105. pice = Config.COMMUNITYBOARD_BUFF_PICE_S80_GR;
  106. else
  107. pice = Config.COMMUNITYBOARD_BUFF_PICE_S84_GR;
  108. }
  109. else
  110. pice = Config.COMMUNITYBOARD_BUFF_PICE * (mBypass[1].startsWith("mage") ? Config.COMMUNITI_LIST_MAGE_SUPPORT.size() : Config.COMMUNITI_LIST_FIGHTER_SUPPORT.size());
  111.  
  112. if(player.getAdena() < pice)
  113. {
  114. if (player.isLangRus())
  115. player.sendMessage("Недостаточно сердств!");
  116. else
  117. player.sendMessage("It is not enough money!");
  118. ShowHtml(mBypass[2], player);
  119. return;
  120. }
  121.  
  122. GroupBuff(player, mBypass[1].startsWith("mage") ? Config.COMMUNITI_LIST_MAGE_SUPPORT : Config.COMMUNITI_LIST_FIGHTER_SUPPORT);
  123. player.reduceAdena(pice);
  124. ShowHtml(mBypass[2], player);
  125. }
  126. else if(bypass.startsWith("_bbsbsingle"))
  127. {
  128. StringTokenizer st2 = new StringTokenizer(bypass, ";");
  129. String[] mBypass = st2.nextToken().split(":");
  130.  
  131. Summon pet = player.getPet();
  132. int id = Integer.parseInt(mBypass[1]);
  133. int lvl = Integer.parseInt(mBypass[2]);
  134. int time = Config.COMMUNITYBOARD_BUFF_TIME;
  135.  
  136. int pice = 0;
  137. if (Config.COMMUNITYBOARD_BOARD_ALT_ENABLED)
  138. {
  139. if (player.getLevel() < 20)
  140. pice = Config.COMMUNITYBOARD_BUFF_PICE_NG;
  141. else if (player.getLevel() >= 20 && player.getLevel() <40)
  142. pice = Config.COMMUNITYBOARD_BUFF_PICE_D;
  143. else if (player.getLevel() >= 40 && player.getLevel() <52)
  144. pice = Config.COMMUNITYBOARD_BUFF_PICE_C;
  145. else if (player.getLevel() >= 52 && player.getLevel() <61)
  146. pice = Config.COMMUNITYBOARD_BUFF_PICE_B;
  147. else if (player.getLevel() >= 61 && player.getLevel() <76)
  148. pice = Config.COMMUNITYBOARD_BUFF_PICE_A;
  149. else if (player.getLevel() >= 76 && player.getLevel() <80)
  150. pice = Config.COMMUNITYBOARD_BUFF_PICE_S;
  151. else if (player.getLevel() >= 80 && player.getLevel() <84)
  152. pice = Config.COMMUNITYBOARD_BUFF_PICE_S80;
  153. else
  154. pice = Config.COMMUNITYBOARD_BUFF_PICE_S84;
  155. }
  156. else
  157. pice = Config.COMMUNITYBOARD_BUFF_PICE;
  158.  
  159. String page = mBypass[3];
  160.  
  161. if(player.getAdena() < pice)
  162. {
  163. if (player.isLangRus())
  164. player.sendMessage("Недостаточно сердств!");
  165. else
  166. player.sendMessage("It is not enough money!");
  167. ShowHtml(page, player);
  168. return;
  169. }
  170.  
  171. if(!Config.COMMUNITYBOARD_BUFF_ALLOW.contains(id))
  172. {
  173. if (player.isLangRus())
  174. player.sendMessage("Недопустимый эффект!");
  175. else
  176. player.sendMessage("Invalid effect!");
  177. ShowHtml(page, player);
  178. return;
  179. }
  180.  
  181. Skill skill = SkillTable.getInstance().getInfo(id, lvl);
  182.  
  183. if(!player.getVarB("isPlayerBuff") && pet != null)
  184. for(EffectTemplate et : skill.getEffectTemplates())
  185. {
  186. Env env = new Env(pet, pet, skill);
  187. Effect effect = et.getEffect(env);
  188. effect.setPeriod(time);
  189. pet.getEffectList().addEffect(effect);
  190. pet.updateEffectIconsImpl();
  191. }
  192. else
  193. for(EffectTemplate et : skill.getEffectTemplates())
  194. {
  195. Env env = new Env(player, player, skill);
  196. Effect effect = et.getEffect(env);
  197. effect.setPeriod(time);
  198. player.getEffectList().addEffect(effect);
  199. player.updateEffectIconsImpl();
  200. }
  201.  
  202. player.reduceAdena(pice);
  203. ShowHtml(page, player);
  204. }
  205. else if(bypass.startsWith("_bbsbaim")){
  206. StringTokenizer st2 = new StringTokenizer(bypass, ";");
  207. String[] mBypass = st2.nextToken().split(":");
  208.  
  209. player.setVar("isPlayerBuff", player.getVarB("isPlayerBuff") ? "0" : "1", -1);
  210.  
  211. ShowHtml(mBypass[1], player);
  212. }
  213. else if(bypass.startsWith("_bbsbregen"))
  214. {
  215. StringTokenizer st2 = new StringTokenizer(bypass, ";");
  216. String[] mBypass = st2.nextToken().split(":");
  217.  
  218. int pice = 0;
  219. if (Config.COMMUNITYBOARD_BOARD_ALT_ENABLED)
  220. {
  221. if (player.getLevel() < 20)
  222. pice = Config.COMMUNITYBOARD_BUFF_PICE_NG;
  223. else if (player.getLevel() >= 20 && player.getLevel() <40)
  224. pice = Config.COMMUNITYBOARD_BUFF_PICE_D;
  225. else if (player.getLevel() >= 40 && player.getLevel() <52)
  226. pice = Config.COMMUNITYBOARD_BUFF_PICE_C;
  227. else if (player.getLevel() >= 52 && player.getLevel() <61)
  228. pice = Config.COMMUNITYBOARD_BUFF_PICE_B;
  229. else if (player.getLevel() >= 61 && player.getLevel() <76)
  230. pice = Config.COMMUNITYBOARD_BUFF_PICE_A;
  231. else if (player.getLevel() >= 76 && player.getLevel() <80)
  232. pice = Config.COMMUNITYBOARD_BUFF_PICE_S;
  233. else if (player.getLevel() >= 80 && player.getLevel() <84)
  234. pice = Config.COMMUNITYBOARD_BUFF_PICE_S80;
  235. else
  236. pice = Config.COMMUNITYBOARD_BUFF_PICE_S84;
  237. }
  238. else
  239. pice = Config.COMMUNITYBOARD_BUFF_PICE;
  240.  
  241. if(player.getAdena() < pice * 10)
  242. {
  243. if (player.isLangRus())
  244. player.sendMessage("Недостаточно сердств!");
  245. else
  246. player.sendMessage("It is not enough money!");
  247. ShowHtml(mBypass[1], player);
  248. return;
  249. }
  250.  
  251. if(!player.getVarB("isPlayerBuff") && player.getPet() != null)
  252. {
  253. player.getPet().setCurrentHpMp(player.getPet().getMaxHp(), player.getPet().getMaxMp());
  254. player.getPet().setCurrentCp(player.getPet().getMaxCp());
  255. }
  256. else
  257. {
  258. player.setCurrentHpMp(player.getMaxHp(), player.getMaxMp());
  259. player.setCurrentCp(player.getMaxCp());
  260. }
  261.  
  262. player.reduceAdena(pice * 10);
  263. ShowHtml(mBypass[1], player);
  264. }
  265. else if(bypass.startsWith("_bbsbcansel"))
  266. {
  267. StringTokenizer st2 = new StringTokenizer(bypass, ";");
  268. String[] mBypass = st2.nextToken().split(":");
  269.  
  270. if(player.getEffectList().getEffectsBySkillId(Skill.SKILL_RAID_CURSE) == null)
  271. player.getEffectList().stopAllEffects();
  272. if(player.getPet() != null)
  273. player.getPet().getEffectList().stopAllEffects();
  274.  
  275. ShowHtml(mBypass[1], player);
  276. }
  277. else if(bypass.startsWith("_bbsbsave"))
  278. {
  279. StringTokenizer st2 = new StringTokenizer(bypass, ";");
  280. String[] mBypass = st2.nextToken().split(":");
  281. try
  282. {
  283. String name = mBypass[2].substring(1);
  284.  
  285. SBufferScheme scheme = new SBufferScheme();
  286. if(ManageBbsBuffer.getCountOnePlayer(player.getObjectId()) >= 3)
  287. {
  288. if(player.isLangRus())
  289. player.sendMessage("Превышено максимально допустимое количество схем!");
  290. else
  291. player.sendMessage("Exceeded the number of schemes!");
  292. ShowHtml(mBypass[1], player);
  293. return;
  294. }
  295. if(ManageBbsBuffer.existName(player.getObjectId(), name))
  296. {
  297. if(player.isLangRus())
  298. player.sendMessage("Схема с таким названием уже существует!");
  299. else
  300. player.sendMessage("Scheme with that name already exists!");
  301. ShowHtml(mBypass[1], player);
  302. return;
  303. }
  304.  
  305. if(name.length() > 15)
  306. name = name.substring(0, 15);
  307.  
  308. if(name.length() > 0)
  309. {
  310. scheme.obj_id = player.getObjectId();
  311. scheme.name = name;
  312.  
  313. Effect skill[] = player.getEffectList().getAllFirstEffects();
  314. if(skill.length == 0)
  315. {
  316. if(player.isLangRus())
  317. player.sendMessage("Нет бафов для сохранения!");
  318. else
  319. player.sendMessage("No buffs for the preservation!");
  320. ShowHtml(mBypass[1], player);
  321. return;
  322. }
  323. else
  324. {
  325. for(int i = 0; i < skill.length; i++)
  326. {
  327. if(Config.COMMUNITYBOARD_BUFF_ALLOW.contains(skill[i].getSkill().getId()))
  328. scheme.skills_id.add(skill[i].getSkill().getId());
  329. }
  330. CommunityBufferDAO.getInstance().insert(scheme);
  331. }
  332. }
  333. }
  334. catch(ArrayIndexOutOfBoundsException e)
  335. {
  336. if(player.isLangRus())
  337. player.sendMessage("Вы не ввели имя для сохранения!");
  338. else
  339. player.sendMessage("You did not enter a name to save!");
  340. return;
  341. }
  342.  
  343. ShowHtml(mBypass[1], player);
  344. }
  345. else if(bypass.startsWith("_bbsbdelete")){
  346. StringTokenizer st2 = new StringTokenizer(bypass, ";");
  347. String[] mBypass = st2.nextToken().split(":");
  348.  
  349. CommunityBufferDAO.getInstance().delete(ManageBbsBuffer.getScheme(Integer.parseInt(mBypass[1]), player.getObjectId()));
  350.  
  351. ShowHtml(mBypass[3], player);
  352. }
  353. else if(bypass.startsWith("_bbsbrestore")){
  354. StringTokenizer st2 = new StringTokenizer(bypass, ";");
  355. String[] mBypass = st2.nextToken().split(":");
  356.  
  357. int pice = 0;
  358. if (Config.COMMUNITYBOARD_BOARD_ALT_ENABLED)
  359. {
  360. if (player.getLevel() < 20)
  361. pice = Config.COMMUNITYBOARD_BUFF_PICE_NG_GR;
  362. else if (player.getLevel() >= 20 && player.getLevel() <40)
  363. pice = Config.COMMUNITYBOARD_BUFF_PICE_D_GR;
  364. else if (player.getLevel() >= 40 && player.getLevel() <52)
  365. pice = Config.COMMUNITYBOARD_BUFF_PICE_C_GR;
  366. else if (player.getLevel() >= 52 && player.getLevel() <61)
  367. pice = Config.COMMUNITYBOARD_BUFF_PICE_B_GR;
  368. else if (player.getLevel() >= 61 && player.getLevel() <76)
  369. pice = Config.COMMUNITYBOARD_BUFF_PICE_A_GR;
  370. else if (player.getLevel() >= 76 && player.getLevel() <80)
  371. pice = Config.COMMUNITYBOARD_BUFF_PICE_S_GR;
  372. else if (player.getLevel() >= 80 && player.getLevel() <84)
  373. pice = Config.COMMUNITYBOARD_BUFF_PICE_S80_GR;
  374. else
  375. pice = Config.COMMUNITYBOARD_BUFF_PICE_S84_GR;
  376. }
  377. else
  378. pice = Config.COMMUNITYBOARD_BUFF_SAVE_PICE;
  379.  
  380. if(player.getAdena() < pice)
  381. {
  382. if (player.isLangRus())
  383. player.sendMessage("Недостаточно сердств!");
  384. else
  385. player.sendMessage("It is not enough money!");
  386. ShowHtml(mBypass[3], player);
  387. return;
  388. }
  389.  
  390. SBufferScheme scheme = ManageBbsBuffer.getScheme(Integer.parseInt(mBypass[1]), player.getObjectId());
  391. GroupBuff(player, scheme.skills_id);
  392. player.reduceAdena(pice);
  393. ShowHtml(mBypass[3], player);
  394. }
  395. }
  396.  
  397.  
  398. @Override
  399. public void onWriteCommand(Player player, String bypass, String arg1, String arg2, String arg3, String arg4, String arg5){}
  400.  
  401. private void ShowHtml(String name, Player player)
  402. {
  403.  
  404. String html = HtmCache.getInstance().getNotNull(Config.BBS_HOME_DIR + "pages/buffer/" + name + ".htm", player);
  405. if (player.isLangRus())
  406. html = html.replaceFirst("%aim%", player.getVarB("isPlayerBuff") ? "Персонаж" : "Питомец");
  407. else
  408. html = html.replaceFirst("%aim%", player.getVarB("isPlayerBuff") ? "Character" : "Pet");
  409.  
  410. if (Config.COMMUNITYBOARD_BOARD_ALT_ENABLED)
  411. {
  412. if (player.getLevel() < 20)
  413. html = html.replace("%pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_NG));
  414. else if (player.getLevel() >= 20 && player.getLevel() <40)
  415. html = html.replace("%pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_D));
  416. else if (player.getLevel() >= 40 && player.getLevel() <52)
  417. html = html.replace("%pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_C));
  418. else if (player.getLevel() >= 52 && player.getLevel() <61)
  419. html = html.replace("%pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_B));
  420. else if (player.getLevel() >= 61 && player.getLevel() <76)
  421. html = html.replace("%pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_A));
  422. else if (player.getLevel() >= 76 && player.getLevel() <80)
  423. html = html.replace("%pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_S));
  424. else if (player.getLevel() >= 80 && player.getLevel() <84)
  425. html = html.replace("%pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_S80));
  426. else
  427. html = html.replace("%pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_S84));
  428. }
  429. else
  430. html = html.replace("%pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE));
  431.  
  432. if (Config.COMMUNITYBOARD_BOARD_ALT_ENABLED)
  433. {
  434. if (player.getLevel() < 20)
  435. html = html.replace("%group_pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_NG_GR));
  436. else if (player.getLevel() >= 20 && player.getLevel() <40)
  437. html = html.replace("%group_pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_D_GR));
  438. else if (player.getLevel() >= 40 && player.getLevel() <52)
  439. html = html.replace("%group_pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_C_GR));
  440. else if (player.getLevel() >= 52 && player.getLevel() <61)
  441. html = html.replace("%group_pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_B_GR));
  442. else if (player.getLevel() >= 61 && player.getLevel() <76)
  443. html = html.replace("%group_pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_A_GR));
  444. else if (player.getLevel() >= 76 && player.getLevel() <80)
  445. html = html.replace("%group_pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_S_GR));
  446. else if (player.getLevel() >= 80 && player.getLevel() <84)
  447. html = html.replace("%group_pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_S80_GR));
  448. else
  449. html = html.replace("%pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_PICE_S84_GR));
  450. }
  451. else
  452. html = html.replace("%group_pice%", GetStringCount(Config.COMMUNITYBOARD_BUFF_SAVE_PICE));
  453.  
  454. StringBuilder content = new StringBuilder("");
  455. content.append("<table width=120>");
  456. for(SBufferScheme sm : ManageBbsBuffer.getSchemePlayer(player.getObjectId()))
  457. {
  458. content.append("<tr>");
  459. content.append("<td>");
  460. content.append("<button value=\"" + sm.name + "\" action=\"bypass _bbsbrestore:" + sm.id + ":" + sm.name + ":" + name + ";\" width=105 height=20 back=\"L2UI_ct1.Button_DF_Down\" fore=\"L2UI_ct1.Button_DF\">");
  461. content.append("</td>");
  462. content.append("<td>");
  463. content.append("<button value=\"-\" action=\"bypass _bbsbdelete:" + sm.id + ":" + sm.name + ":" + name + ";\" width=20 height=20 back=\"L2UI_ct1.Button_DF_Down\" fore=\"L2UI_ct1.Button_DF\">");
  464. content.append("</td>");
  465. content.append("</tr>");
  466. }
  467. content.append("</table>");
  468.  
  469. html = html.replace("%list_sheme%", content.toString());
  470. html = BbsUtil.htmlBuff(html, player);
  471. ShowBoard.separateAndSend(html, player);
  472. }
  473.  
  474. private void GroupBuff(Player player, List<Integer> list){
  475.  
  476. int time = Config.COMMUNITYBOARD_BUFF_TIME;
  477. Summon pet = player.getPet();
  478. Skill skill = null;
  479.  
  480. for(int i : list)
  481. {
  482. int lvl = SkillTable.getInstance().getBaseLevel(i);
  483.  
  484. if(!Config.COMMUNITYBOARD_BUFF_ALLOW.contains(i))
  485. continue;
  486.  
  487. skill = SkillTable.getInstance().getInfo(i, lvl);
  488. if(!player.getVarB("isPlayerBuff") && pet != null)
  489. for(EffectTemplate et : skill.getEffectTemplates())
  490. {
  491. Env env = new Env(pet, pet, skill);
  492. Effect effect = et.getEffect(env);
  493. effect.setPeriod(time);
  494. pet.getEffectList().addEffect(effect);
  495. pet.updateEffectIconsImpl();
  496. }
  497. else
  498. for(EffectTemplate et : skill.getEffectTemplates())
  499. {
  500. Env env = new Env(player, player, skill);
  501. Effect effect = et.getEffect(env);
  502. effect.setPeriod(time);
  503. player.getEffectList().addEffect(effect);
  504. player.updateEffectIconsImpl();
  505. }
  506. }
  507.  
  508. }
  509.  
  510. private static boolean CheckCondition(Player player){
  511. if (player == null)
  512. return false;
  513.  
  514. if(!Config.USE_BBS_BUFER_IS_COMBAT && (player.getPvpFlag() != 0 || player.isInDuel() || player.isInCombat() || player.isAttackingNow()))
  515. {
  516. if (player.isLangRus())
  517. player.sendMessage("Во время боя нельзя использовать данную функцию.");
  518. else
  519. player.sendMessage("During combat, you can not use this feature.");
  520. return false;
  521. }
  522.  
  523. if (player.isInOlympiadMode())
  524. {
  525. if (player.isLangRus())
  526. player.sendMessage("Во время Олимпиады нельзя использовать данную функцию.");
  527. else
  528. player.sendMessage("During the Olympics you can not use this feature.");
  529. return false;
  530. }
  531.  
  532. if (player.getReflection().getId() != 0 && !Config.COMMUNITYBOARD_INSTANCE_ENABLED)
  533. {
  534. if (player.isLangRus())
  535. player.sendMessage("Бафф доступен только в обычном мире.");
  536. else
  537. player.sendMessage("Buff is only available in the real world.");
  538. return false;
  539. }
  540.  
  541. if (!Config.COMMUNITYBOARD_BUFFER_ENABLED)
  542. {
  543. if (player.isLangRus())
  544. player.sendMessage("Функция баффа отключена.");
  545. else
  546. player.sendMessage("Buff off function.");
  547. return false;
  548. }
  549.  
  550. if (!Config.COMMUNITYBOARD_EVENTS_ENABLED)
  551. {
  552. if (player.getTeam() != TeamType.NONE)
  553. {
  554. if (player.isLangRus())
  555. player.sendMessage("Нельзя использовать бафф во время эвентов.");
  556. else
  557. player.sendMessage("You can not use the buff during Events.");
  558. return false;
  559. }
  560. }
  561. return true;
  562. }
  563. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement