diff options
author | brianluau <brianluau@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2011-05-24 07:59:43 +0000 |
---|---|---|
committer | brianluau <brianluau@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2011-05-24 07:59:43 +0000 |
commit | 285c3820a753982afc30e20286565e74be9b3008 (patch) | |
tree | d6f3596841d58171bcacee3eb9e20c820cc1d589 | |
parent | dfe674f0482005f4d8e915e58daad8b414084a7f (diff) | |
download | hercules-285c3820a753982afc30e20286565e74be9b3008.tar.gz hercules-285c3820a753982afc30e20286565e74be9b3008.tar.bz2 hercules-285c3820a753982afc30e20286565e74be9b3008.tar.xz hercules-285c3820a753982afc30e20286565e74be9b3008.zip |
- Fixed a possible exploit in guild castle investment. (bugreport:4929, topic:272783)
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14833 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r-- | npc/Changelog.txt | 2 | ||||
-rw-r--r-- | npc/guild/agit_template.txt | 17 | ||||
-rw-r--r-- | npc/guild2/arug_cas01.txt | 24 | ||||
-rw-r--r-- | npc/guild2/arug_cas02.txt | 24 | ||||
-rw-r--r-- | npc/guild2/arug_cas03.txt | 24 | ||||
-rw-r--r-- | npc/guild2/arug_cas04.txt | 24 | ||||
-rw-r--r-- | npc/guild2/arug_cas05.txt | 24 | ||||
-rw-r--r-- | npc/guild2/schg_cas01.txt | 24 | ||||
-rw-r--r-- | npc/guild2/schg_cas02.txt | 24 | ||||
-rw-r--r-- | npc/guild2/schg_cas03.txt | 24 | ||||
-rw-r--r-- | npc/guild2/schg_cas04.txt | 24 | ||||
-rw-r--r-- | npc/guild2/schg_cas05.txt | 24 |
12 files changed, 226 insertions, 33 deletions
diff --git a/npc/Changelog.txt b/npc/Changelog.txt index 0cd27b923..e1ebcecaa 100644 --- a/npc/Changelog.txt +++ b/npc/Changelog.txt @@ -1,5 +1,7 @@ Date Added ====== +2011/05/23 + * Rev. 14833 Fixed a possible exploit in guild castle investment. (bugreport:4929, topic:272783) [Brian] 2011/04/08 * Rev. 14780 Added missing Hair Dressers and Hair Dyer to Lighthalzen. [L0ne_W0lf] - Hair Dresser will change hair styles ranging between 20 to 27 diff --git a/npc/guild/agit_template.txt b/npc/guild/agit_template.txt index f43536978..68e9e7f3a 100644 --- a/npc/guild/agit_template.txt +++ b/npc/guild/agit_template.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= L0ne_W0lf //===== Current Version: ===================================== -//= 1.7 +//= 1.8 //===== Compatible With: ===================================== //= eAthena SVN //===== Description: ========================================= @@ -49,6 +49,7 @@ //= 1.6b Moved where investments are added to eco/def. [L0ne_W0lf] //= 1.7 Updated Agitbreak announcements, added bc_woe [L0ne_W0lf] //= and added extended anouncement format for mapannounce. +//= 1.8 Fixed a possible exploit in guild castle investment. [Brian] //============================================================ // AGIT Manager Template @@ -525,7 +526,7 @@ OnRecvCastle: mes "^ff0000But the commercial growth level of our castle is peaked at 100%. It doesn't need any more investment. As I expected you have a great acumen, Master.^000000"; close; } - if (GetCastleData(strnpcinfo(2),4) == 2) { + if (GetCastleData(strnpcinfo(2),4) >= 2) { mes "^ff0000But you already invested twice today so you cannot invest any more.^000000 I expect our riches to increase in growth level."; close; } @@ -538,6 +539,11 @@ OnRecvCastle: next; switch(select("Invest in commercial growth:Cancel")) { case 1: + if (GetCastleData(strnpcinfo(2),4) >= 2) { + mes "[ Steward " + .@name$ + " ]"; + mes "I'm sorry but you already invested twice today so you cannot invest any more."; + close; + } if (Zeny < .@eco_invest) { mes "[ Steward " + .@name$ + " ]"; mes "I'm sorry but there is not enough zeny to invest. You will have to try again when you have the funds, Master."; @@ -588,7 +594,7 @@ OnRecvCastle: mes "^ff0000But the safeguard level of our castle is peaked at 100%. It doesn't need any more investment. As I expected you have a great acumen, Master.^000000"; close; } - if (GetCastleData(strnpcinfo(2),5) == 2) { + if (GetCastleData(strnpcinfo(2),5) >= 2) { mes "^ff0000But you already invested twice today so you cannot invest any more.^000000 I expect our riches to increase in growth level."; close; } @@ -601,6 +607,11 @@ OnRecvCastle: next; switch(select("Invest in safeguard.:Cancel")) { case 1: + if (GetCastleData(strnpcinfo(2),5) >= 2) { + mes "[ Steward " + .@name$ + " ]"; + mes "I'm sorry but you already invested twice today so you cannot invest any more."; + close; + } if (Zeny < .@def_invest) { mes "[ Steward " + .@name$ + " ]"; mes "I'm sorry but there is not enough zeny to invest. You will have to try again when you have the funds, Master."; diff --git a/npc/guild2/arug_cas01.txt b/npc/guild2/arug_cas01.txt index 62c39d3a5..4f76e6496 100644 --- a/npc/guild2/arug_cas01.txt +++ b/npc/guild2/arug_cas01.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= L0ne_W0lf //===== Current Version: ===================================== -//= 1.8 +//= 2.0 //===== Compatible With: ===================================== //= eAthena SVN //===== Description: ========================================= @@ -23,6 +23,7 @@ //= 1.8 Applied updated eco/def systems. [L0ne_W0lf] //= 1.9 Fixed eco/def not actually incrementing. [L0ne_W0lf] //= Can no longer gain eco/def higher than 100. +//= 2.0 Fixed a possible exploit in guild castle investment. [Brian] //============================================================ arug_cas01,1,1,0 script Manager#aru01_02 111,{ @@ -2361,7 +2362,7 @@ arug_cas01,92,380,3 script Steward#aru01 55,{ mes "any further than that."; close; } - if (GetCastleData("arug_cas01",4) == 2) { + if (GetCastleData("arug_cas01",4) >= 2) { mes "[ Steward ]"; mes "You've already made two"; mes "investments today, so you'll"; @@ -2387,6 +2388,14 @@ arug_cas01,92,380,3 script Steward#aru01 55,{ next; switch(select("Invest in Commercial Growth:Cancel")) { case 1: + if (GetCastleData("arug_cas01",4) >= 2) { + mes "[ Steward ]"; + mes "You've already made two"; + mes "investments today, so you'll"; + mes "have to wait until tomorrow"; + mes "to make another investment."; + close; + } if (Zeny < .@eco_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; @@ -2455,7 +2464,7 @@ arug_cas01,92,380,3 script Steward#aru01 55,{ mes "cannot be increased further."; close; } - if (GetCastleData("arug_cas01",5) == 2) { + if (GetCastleData("arug_cas01",5) >= 2) { mes "Master, you've already"; mes "invested in Defense twice"; mes "today. You'll need to wait"; @@ -2479,6 +2488,15 @@ arug_cas01,92,380,3 script Steward#aru01 55,{ next; switch(select("Invest in Defense:Cancel")) { case 1: + if (GetCastleData("arug_cas01",5) >= 2) { + mes "[ Steward ]"; + mes "Master, you've already"; + mes "invested in Defense twice"; + mes "today. You'll need to wait"; + mes "until tomorrow if you really"; + mes "want to increase our defenses."; + close; + } if (Zeny < .@def_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; diff --git a/npc/guild2/arug_cas02.txt b/npc/guild2/arug_cas02.txt index 369475d19..c29643ba7 100644 --- a/npc/guild2/arug_cas02.txt +++ b/npc/guild2/arug_cas02.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= L0ne_W0lf //===== Current Version: ===================================== -//= 2.2 +//= 2.3 //===== Compatible With: ===================================== //= eAthena SVN //===== Description: ========================================= @@ -26,6 +26,7 @@ //= 2.1 Applied updated eco/def systems. [L0ne_W0lf] //= 2.2 Fixed eco/def not actually incrementing. [L0ne_W0lf] //= Can no longer gain eco/def higher than 100. +//= 2.3 Fixed a possible exploit in guild castle investment. [Brian] //============================================================ arug_cas02,1,1,0 script Manager#aru02_02 111,{ @@ -2322,7 +2323,7 @@ arug_cas02,303,341,3 script Steward#aru02 55,{ mes "any further than that."; close; } - if (GetCastleData("arug_cas02",4) == 2) { + if (GetCastleData("arug_cas02",4) >= 2) { mes "[ Steward ]"; mes "You've already made two"; mes "investments today, so you'll"; @@ -2348,6 +2349,14 @@ arug_cas02,303,341,3 script Steward#aru02 55,{ next; switch(select("Invest in Commercial Growth:Cancel")) { case 1: + if (GetCastleData("arug_cas02",4) >= 2) { + mes "[ Steward ]"; + mes "You've already made two"; + mes "investments today, so you'll"; + mes "have to wait until tomorrow"; + mes "to make another investment."; + close; + } if (Zeny < .@eco_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; @@ -2416,7 +2425,7 @@ arug_cas02,303,341,3 script Steward#aru02 55,{ mes "cannot be increased further."; close; } - if (GetCastleData("arug_cas02",5) == 2) { + if (GetCastleData("arug_cas02",5) >= 2) { mes "Master, you've already"; mes "invested in Defense twice"; mes "today. You'll need to wait"; @@ -2440,6 +2449,15 @@ arug_cas02,303,341,3 script Steward#aru02 55,{ next; switch(select("Invest in Defense:Cancel")) { case 1: + if (GetCastleData("arug_cas02",5) >= 2) { + mes "[ Steward ]"; + mes "Master, you've already"; + mes "invested in Defense twice"; + mes "today. You'll need to wait"; + mes "until tomorrow if you really"; + mes "want to increase our defenses."; + close; + } if (Zeny < .@def_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; diff --git a/npc/guild2/arug_cas03.txt b/npc/guild2/arug_cas03.txt index 535434406..9bae4be4b 100644 --- a/npc/guild2/arug_cas03.txt +++ b/npc/guild2/arug_cas03.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= L0ne_W0lf //===== Current Version: ===================================== -//= 2.0 +//= 2.1 //===== Compatible With: ===================================== //= eAthena SVN //===== Description: ========================================= @@ -25,6 +25,7 @@ //= 1.9 Applied updated eco/def systems. [L0ne_W0lf] //= 2.0 Fixed eco/def not actually incrementing. [L0ne_W0lf] //= Can no longer gain eco/def higher than 100. +//= 2.1 Fixed a possible exploit in guild castle investment. [Brian] //============================================================ arug_cas03,1,1,0 script Manager#aru03_02 111,{ @@ -2367,7 +2368,7 @@ arug_cas03,328,98,3 script Steward#aru03 55,{ mes "any further than that."; close; } - if (GetCastleData("arug_cas03",4) == 2) { + if (GetCastleData("arug_cas03",4) >= 2) { mes "[ Steward ]"; mes "You've already made two"; mes "investments today, so you'll"; @@ -2393,6 +2394,14 @@ arug_cas03,328,98,3 script Steward#aru03 55,{ next; switch(select("Invest in Commercial Growth:Cancel")) { case 1: + if (GetCastleData("arug_cas03",4) >= 2) { + mes "[ Steward ]"; + mes "You've already made two"; + mes "investments today, so you'll"; + mes "have to wait until tomorrow"; + mes "to make another investment."; + close; + } if (Zeny < .@eco_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; @@ -2461,7 +2470,7 @@ arug_cas03,328,98,3 script Steward#aru03 55,{ mes "cannot be increased further."; close; } - if (GetCastleData("arug_cas03",5) == 2) { + if (GetCastleData("arug_cas03",5) >= 2) { mes "Master, you've already"; mes "invested in Defense twice"; mes "today. You'll need to wait"; @@ -2485,6 +2494,15 @@ arug_cas03,328,98,3 script Steward#aru03 55,{ next; switch(select("Invest in Defense:Cancel")) { case 1: + if (GetCastleData("arug_cas03",5) >= 2) { + mes "[ Steward ]"; + mes "Master, you've already"; + mes "invested in Defense twice"; + mes "today. You'll need to wait"; + mes "until tomorrow if you really"; + mes "want to increase our defenses."; + close; + } if (Zeny < .@def_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; diff --git a/npc/guild2/arug_cas04.txt b/npc/guild2/arug_cas04.txt index ba75931a6..7a7ad1b0f 100644 --- a/npc/guild2/arug_cas04.txt +++ b/npc/guild2/arug_cas04.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= L0ne_W0lf //===== Current Version: ===================================== -//= 2.2 +//= 2.3 //===== Compatible With: ===================================== //= eAthena SVN //===== Description: ========================================= @@ -26,6 +26,7 @@ //= Can no longer gain eco/def higher than 100. //= 2.1 Fixed setcell extending more than it should on 3rd barricade. (bugreport:4323) [L0ne_W0lf] //= 2.2 Corrected exterior flag positions. (bugreport:4436) [L0ne_W0lf] +//= 2.3 Fixed a possible exploit in guild castle investment. [Brian] //============================================================ arug_cas04,1,1,0 script Manager#aru04_02 111,{ @@ -2371,7 +2372,7 @@ arug_cas04,328,98,3 script Steward#aru04 55,{ mes "any further than that."; close; } - if (GetCastleData("arug_cas04",4) == 2) { + if (GetCastleData("arug_cas04",4) >= 2) { mes "[ Steward ]"; mes "You've already made two"; mes "investments today, so you'll"; @@ -2397,6 +2398,14 @@ arug_cas04,328,98,3 script Steward#aru04 55,{ next; switch(select("Invest in Commercial Growth:Cancel")) { case 1: + if (GetCastleData("arug_cas04",4) >= 2) { + mes "[ Steward ]"; + mes "You've already made two"; + mes "investments today, so you'll"; + mes "have to wait until tomorrow"; + mes "to make another investment."; + close; + } if (Zeny < .@eco_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; @@ -2465,7 +2474,7 @@ arug_cas04,328,98,3 script Steward#aru04 55,{ mes "cannot be increased further."; close; } - if (GetCastleData("arug_cas04",5) == 2) { + if (GetCastleData("arug_cas04",5) >= 2) { mes "Master, you've already"; mes "invested in Defense twice"; mes "today. You'll need to wait"; @@ -2489,6 +2498,15 @@ arug_cas04,328,98,3 script Steward#aru04 55,{ next; switch(select("Invest in Defense:Cancel")) { case 1: + if (GetCastleData("arug_cas04",5) >= 2) { + mes "[ Steward ]"; + mes "Master, you've already"; + mes "invested in Defense twice"; + mes "today. You'll need to wait"; + mes "until tomorrow if you really"; + mes "want to increase our defenses."; + close; + } if (Zeny < .@def_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; diff --git a/npc/guild2/arug_cas05.txt b/npc/guild2/arug_cas05.txt index 4c4f4334d..5abdd6c85 100644 --- a/npc/guild2/arug_cas05.txt +++ b/npc/guild2/arug_cas05.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= L0ne_W0lf //===== Current Version: ===================================== -//= 2.2 +//= 2.3 //===== Compatible With: ===================================== //= eAthena SVN //===== Description: ========================================= @@ -26,6 +26,7 @@ //= Can no longer gain eco/def higher than 100. //= 2.1 Fixed setcell extending more than it should on 3rd barricade. (bugreport:4323) [L0ne_W0lf] //= 2.2 Fixed exterior flag placements. [L0ne_W0lf] +//= 2.3 Fixed a possible exploit in guild castle investment. [Brian] //============================================================ arug_cas05,1,1,0 script Manager#aru05_02 111,{ @@ -2371,7 +2372,7 @@ arug_cas05,328,98,3 script Steward#aru05 55,{ mes "any further than that."; close; } - if (GetCastleData("arug_cas05",4) == 2) { + if (GetCastleData("arug_cas05",4) >= 2) { mes "[ Steward ]"; mes "You've already made two"; mes "investments today, so you'll"; @@ -2397,6 +2398,14 @@ arug_cas05,328,98,3 script Steward#aru05 55,{ next; switch(select("Invest in Commercial Growth:Cancel")) { case 1: + if (GetCastleData("arug_cas05",4) >= 2) { + mes "[ Steward ]"; + mes "You've already made two"; + mes "investments today, so you'll"; + mes "have to wait until tomorrow"; + mes "to make another investment."; + close; + } if (Zeny < .@eco_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; @@ -2465,7 +2474,7 @@ arug_cas05,328,98,3 script Steward#aru05 55,{ mes "cannot be increased further."; close; } - if (GetCastleData("arug_cas05",5) == 2) { + if (GetCastleData("arug_cas05",5) >= 2) { mes "Master, you've already"; mes "invested in Defense twice"; mes "today. You'll need to wait"; @@ -2489,6 +2498,15 @@ arug_cas05,328,98,3 script Steward#aru05 55,{ next; switch(select("Invest in Defense:Cancel")) { case 1: + if (GetCastleData("arug_cas05",5) >= 2) { + mes "[ Steward ]"; + mes "Master, you've already"; + mes "invested in Defense twice"; + mes "today. You'll need to wait"; + mes "until tomorrow if you really"; + mes "want to increase our defenses."; + close; + } if (Zeny < .@def_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; diff --git a/npc/guild2/schg_cas01.txt b/npc/guild2/schg_cas01.txt index 59990be8b..0b565e6c6 100644 --- a/npc/guild2/schg_cas01.txt +++ b/npc/guild2/schg_cas01.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= L0ne_W0lf //===== Current Version: ===================================== -//= 2.0 +//= 2.1 //===== Compatible With: ===================================== //= eAthena SVN //===== Description: ========================================= @@ -24,6 +24,7 @@ //= 1.9 Applied updated eco/def systems. [L0ne_W0lf] //= 2.0 Fixed eco/def not actually incrementing. [L0ne_W0lf] //= Can no longer gain eco/def higher than 100. +//= 2.1 Fixed a possible exploit in guild castle investment. [Brian] //============================================================ schg_cas01,1,1,0 script Manager#sch01_02 111,{ @@ -2369,7 +2370,7 @@ schg_cas01,247,305,3 script Steward#sch01 55,{ mes "any further than that."; close; } - if (GetCastleData("schg_cas01",4) == 2) { + if (GetCastleData("schg_cas01",4) >= 2) { mes "[ Steward ]"; mes "You've already made two"; mes "investments today, so you'll"; @@ -2395,6 +2396,14 @@ schg_cas01,247,305,3 script Steward#sch01 55,{ next; switch(select("Invest in Commercial Growth:Cancel")) { case 1: + if (GetCastleData("schg_cas01",4) >= 2) { + mes "[ Steward ]"; + mes "You've already made two"; + mes "investments today, so you'll"; + mes "have to wait until tomorrow"; + mes "to make another investment."; + close; + } if (Zeny < .@eco_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; @@ -2463,7 +2472,7 @@ schg_cas01,247,305,3 script Steward#sch01 55,{ mes "cannot be increased further."; close; } - if (GetCastleData("schg_cas01",5) == 2) { + if (GetCastleData("schg_cas01",5) >= 2) { mes "Master, you've already"; mes "invested in Defense twice"; mes "today. You'll need to wait"; @@ -2487,6 +2496,15 @@ schg_cas01,247,305,3 script Steward#sch01 55,{ next; switch(select("Invest in Defense:Cancel")) { case 1: + if (GetCastleData("schg_cas01",5) >= 2) { + mes "[ Steward ]"; + mes "Master, you've already"; + mes "invested in Defense twice"; + mes "today. You'll need to wait"; + mes "until tomorrow if you really"; + mes "want to increase our defenses."; + close; + } if (Zeny < .@def_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; diff --git a/npc/guild2/schg_cas02.txt b/npc/guild2/schg_cas02.txt index 2c3d5be69..575c1d128 100644 --- a/npc/guild2/schg_cas02.txt +++ b/npc/guild2/schg_cas02.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= L0ne_W0lf //===== Current Version: ===================================== -//= 2.1 +//= 2.2 //===== Compatible With: ===================================== //= eAthena SVN //===== Description: ========================================= @@ -26,6 +26,7 @@ //= 2.0a Corrected investment data being reset before applied. //= 2.1 Fixed eco/def not actually incrementing. [L0ne_W0lf] //= Can no longer gain eco/def higher than 100. +//= 2.2 Fixed a possible exploit in guild castle investment. [Brian] //============================================================ schg_cas02,1,1,0 script Manager#sch02_02 111,{ @@ -2303,7 +2304,7 @@ schg_cas02,105,378,3 script Steward#sch02 55,{ mes "any further than that."; close; } - if (GetCastleData("schg_cas02",4) == 2) { + if (GetCastleData("schg_cas02",4) >= 2) { mes "[ Steward ]"; mes "You've already made two"; mes "investments today, so you'll"; @@ -2329,6 +2330,14 @@ schg_cas02,105,378,3 script Steward#sch02 55,{ next; switch(select("Invest in Commercial Growth:Cancel")) { case 1: + if (GetCastleData("schg_cas02",4) >= 2) { + mes "[ Steward ]"; + mes "You've already made two"; + mes "investments today, so you'll"; + mes "have to wait until tomorrow"; + mes "to make another investment."; + close; + } if (Zeny < .@eco_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; @@ -2397,7 +2406,7 @@ schg_cas02,105,378,3 script Steward#sch02 55,{ mes "cannot be increased further."; close; } - if (GetCastleData("schg_cas02",5) == 2) { + if (GetCastleData("schg_cas02",5) >= 2) { mes "Master, you've already"; mes "invested in Defense twice"; mes "today. You'll need to wait"; @@ -2421,6 +2430,15 @@ schg_cas02,105,378,3 script Steward#sch02 55,{ next; switch(select("Invest in Defense:Cancel")) { case 1: + if (GetCastleData("schg_cas02",5) >= 2) { + mes "[ Steward ]"; + mes "Master, you've already"; + mes "invested in Defense twice"; + mes "today. You'll need to wait"; + mes "until tomorrow if you really"; + mes "want to increase our defenses."; + close; + } if (Zeny < .@def_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; diff --git a/npc/guild2/schg_cas03.txt b/npc/guild2/schg_cas03.txt index 7d7015f25..2960a6e61 100644 --- a/npc/guild2/schg_cas03.txt +++ b/npc/guild2/schg_cas03.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= L0ne_W0lf //===== Current Version: ===================================== -//= 2.3 +//= 2.4 //===== Compatible With: ===================================== //= eAthena SVN //===== Description: ========================================= @@ -29,6 +29,7 @@ //= 2.2 Fixed eco/def not actually incrementing. [L0ne_W0lf] //= Can no longer gain eco/def higher than 100. //= 2.3 Fixed invalid corridinates when spawning a guardian. [L0ne_W0lf] +//= 2.4 Fixed a possible exploit in guild castle investment. [Brian] //============================================================ schg_cas03,1,1,0 script Manager#sch03_02 111,{ @@ -2362,7 +2363,7 @@ schg_cas03,88,90,3 script Steward#sch03 55,{ mes "any further than that."; close; } - if (GetCastleData("schg_cas03",4) == 2) { + if (GetCastleData("schg_cas03",4) >= 2) { mes "[ Steward ]"; mes "You've already made two"; mes "investments today, so you'll"; @@ -2388,6 +2389,14 @@ schg_cas03,88,90,3 script Steward#sch03 55,{ next; switch(select("Invest in Commercial Growth:Cancel")) { case 1: + if (GetCastleData("schg_cas03",4) >= 2) { + mes "[ Steward ]"; + mes "You've already made two"; + mes "investments today, so you'll"; + mes "have to wait until tomorrow"; + mes "to make another investment."; + close; + } if (Zeny < .@eco_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; @@ -2456,7 +2465,7 @@ schg_cas03,88,90,3 script Steward#sch03 55,{ mes "cannot be increased further."; close; } - if (GetCastleData("schg_cas03",5) == 2) { + if (GetCastleData("schg_cas03",5) >= 2) { mes "Master, you've already"; mes "invested in Defense twice"; mes "today. You'll need to wait"; @@ -2480,6 +2489,15 @@ schg_cas03,88,90,3 script Steward#sch03 55,{ next; switch(select("Invest in Defense:Cancel")) { case 1: + if (GetCastleData("schg_cas03",5) >= 2) { + mes "[ Steward ]"; + mes "Master, you've already"; + mes "invested in Defense twice"; + mes "today. You'll need to wait"; + mes "until tomorrow if you really"; + mes "want to increase our defenses."; + close; + } if (Zeny < .@def_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; diff --git a/npc/guild2/schg_cas04.txt b/npc/guild2/schg_cas04.txt index cc4128f98..733fd4c74 100644 --- a/npc/guild2/schg_cas04.txt +++ b/npc/guild2/schg_cas04.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= L0ne_W0lf //===== Current Version: ===================================== -//= 1.7 +//= 1.8 //===== Compatible With: ===================================== //= eAthena SVN //===== Description: ========================================= @@ -21,6 +21,7 @@ //= 1.6 Applied updated eco/def systems. [L0ne_W0lf] //= 1.7 Fixed eco/def not actually incrementing. [L0ne_W0lf] //= Can no longer gain eco/def higher than 100. +//= 1.8 Fixed a possible exploit in guild castle investment. [Brian] //============================================================ schg_cas04,1,1,0 script Manager#sch04_02 111,{ @@ -2366,7 +2367,7 @@ schg_cas04,247,305,3 script Steward#sch04 55,{ mes "any further than that."; close; } - if (GetCastleData("schg_cas04",4) == 2) { + if (GetCastleData("schg_cas04",4) >= 2) { mes "[ Steward ]"; mes "You've already made two"; mes "investments today, so you'll"; @@ -2392,6 +2393,14 @@ schg_cas04,247,305,3 script Steward#sch04 55,{ next; switch(select("Invest in Commercial Growth:Cancel")) { case 1: + if (GetCastleData("schg_cas04",4) >= 2) { + mes "[ Steward ]"; + mes "You've already made two"; + mes "investments today, so you'll"; + mes "have to wait until tomorrow"; + mes "to make another investment."; + close; + } if (Zeny < .@eco_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; @@ -2460,7 +2469,7 @@ schg_cas04,247,305,3 script Steward#sch04 55,{ mes "cannot be increased further."; close; } - if (GetCastleData("schg_cas04",5) == 2) { + if (GetCastleData("schg_cas04",5) >= 2) { mes "Master, you've already"; mes "invested in Defense twice"; mes "today. You'll need to wait"; @@ -2484,6 +2493,15 @@ schg_cas04,247,305,3 script Steward#sch04 55,{ next; switch(select("Invest in Defense:Cancel")) { case 1: + if (GetCastleData("schg_cas04",5) >= 2) { + mes "[ Steward ]"; + mes "Master, you've already"; + mes "invested in Defense twice"; + mes "today. You'll need to wait"; + mes "until tomorrow if you really"; + mes "want to increase our defenses."; + close; + } if (Zeny < .@def_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; diff --git a/npc/guild2/schg_cas05.txt b/npc/guild2/schg_cas05.txt index 912506785..59465623b 100644 --- a/npc/guild2/schg_cas05.txt +++ b/npc/guild2/schg_cas05.txt @@ -3,7 +3,7 @@ //===== By: ================================================== //= L0ne_W0lf //===== Current Version: ===================================== -//= 1.7 +//= 1.8 //===== Compatible With: ===================================== //= eAthena SVN //===== Description: ========================================= @@ -21,6 +21,7 @@ //= 1.6 Applied updated eco/def systems. [L0ne_W0lf] //= 1.7 Fixed eco/def not actually incrementing. [L0ne_W0lf] //= Can no longer gain eco/def higher than 100. +//= 1.8 Fixed a possible exploit in guild castle investment. [Brian] //============================================================ schg_cas05,1,1,0 script Manager#sch05_02 111,{ @@ -2366,7 +2367,7 @@ schg_cas05,247,305,3 script Steward#sch05 55,{ mes "any further than that."; close; } - if (GetCastleData("schg_cas05",4) == 2) { + if (GetCastleData("schg_cas05",4) >= 2) { mes "[ Steward ]"; mes "You've already made two"; mes "investments today, so you'll"; @@ -2392,6 +2393,14 @@ schg_cas05,247,305,3 script Steward#sch05 55,{ next; switch(select("Invest in Commercial Growth:Cancel")) { case 1: + if (GetCastleData("schg_cas05",4) >= 2) { + mes "[ Steward ]"; + mes "You've already made two"; + mes "investments today, so you'll"; + mes "have to wait until tomorrow"; + mes "to make another investment."; + close; + } if (Zeny < .@eco_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; @@ -2460,7 +2469,7 @@ schg_cas05,247,305,3 script Steward#sch05 55,{ mes "cannot be increased further."; close; } - if (GetCastleData("schg_cas05",5) == 2) { + if (GetCastleData("schg_cas05",5) >= 2) { mes "Master, you've already"; mes "invested in Defense twice"; mes "today. You'll need to wait"; @@ -2484,6 +2493,15 @@ schg_cas05,247,305,3 script Steward#sch05 55,{ next; switch(select("Invest in Defense:Cancel")) { case 1: + if (GetCastleData("schg_cas05",5) >= 2) { + mes "[ Steward ]"; + mes "Master, you've already"; + mes "invested in Defense twice"; + mes "today. You'll need to wait"; + mes "until tomorrow if you really"; + mes "want to increase our defenses."; + close; + } if (Zeny < .@def_invest) { mes "[ Steward ]"; mes "I'm sorry, Master, but"; |