Jump to content
  • 0

@buffs command removing stone curse debuff


Question

5 answers to this question

Recommended Posts

  • 0
Posted
1 hour ago, IsabelaFernandez said:

Hi guys, I have this custom script and whenever the player enters the Stone Curse state, the @buffs remove command. Is there any solution to not be removing it?

https://pastebin.com/Z8Bbb4Q9

   unless you edit your SC_BLESSING on your status.cpp

	case SC_BLESSING:
		// !TODO: Blessing and Agi up should do 1 damage against players on Undead Status, even on PvM
		// !but cannot be plagiarized (this requires aegis investigation on packets and official behavior) [Brainstorm]
		if ((!undead_flag && status->race != RC_DEMON) || bl->type == BL_PC) {
			if (sc->data[SC_STONE] && sc->opt1 == OPT1_STONE)
				status_change_end(bl, SC_STONE, INVALID_TIMER);
			if (sc->data[SC_CURSE]) {
					status_change_end(bl, SC_CURSE, INVALID_TIMER);
					return 1; // End Curse and do not give stat boost
			}
		}
		if(sc->data[SC_SPIRIT] && sc->data[SC_SPIRIT]->val2 == SL_HIGH)
			status_change_end(bl, SC_SPIRIT, INVALID_TIMER);
		break;

 

  • Upvote 1
  • 0
Posted
1 hour ago, Bringer said:

   unless you edit your SC_BLESSING on your status.cpp

	case SC_BLESSING:
		// !TODO: Blessing and Agi up should do 1 damage against players on Undead Status, even on PvM
		// !but cannot be plagiarized (this requires aegis investigation on packets and official behavior) [Brainstorm]
		if ((!undead_flag && status->race != RC_DEMON) || bl->type == BL_PC) {
			if (sc->data[SC_STONE] && sc->opt1 == OPT1_STONE)
				status_change_end(bl, SC_STONE, INVALID_TIMER);
			if (sc->data[SC_CURSE]) {
					status_change_end(bl, SC_CURSE, INVALID_TIMER);
					return 1; // End Curse and do not give stat boost
			}
		}
		if(sc->data[SC_SPIRIT] && sc->data[SC_SPIRIT]->val2 == SL_HIGH)
			status_change_end(bl, SC_SPIRIT, INVALID_TIMER);
		break;

 

which part should I delete?

  • 0
Posted

just comment this part 

/*if ((!undead_flag && status->race != RC_DEMON) || bl->type == BL_PC) {
			if (sc->data[SC_STONE] && sc->opt1 == OPT1_STONE)
				status_change_end(bl, SC_STONE, INVALID_TIMER);
			if (sc->data[SC_CURSE]) {
					status_change_end(bl, SC_CURSE, INVALID_TIMER);
					return 1; // End Curse and do not give stat boost
			}
		}*/
  • Upvote 1
  • 0
Posted
-	script	buff_cmd	-1,{
	
OnInit:
	bindatcmd "buffs", strnpcinfo(0)+"::OnCommand",0,99;
	end;

OnCommand:
	if(getgroupid() <= 4) {
		message strcharinfo(0),"No, VIP.";
		end;
	}
	.@stone_time = getstatus(SC_STONE, 5);
	.@curse_time = getstatus(SC_CURSE, 5);
	skilleffect 34,0; sc_start SC_BLESSING,360000,10;
	skilleffect 29,0; sc_start SC_INCREASEAGI,360000,10;
	sc_start SC_ASPDPOTION2,360000,0;
	sc_start SC_STRFood,360000,10;
	sc_start SC_AGIFood,360000,10;
	sc_start SC_VITFood,360000,10;
	sc_start SC_INTFood,360000,10;
	sc_start SC_DEXFood,360000,10;
	sc_start SC_LUKFood,360000,10;
	sc_start SC_HitFood,1200000,30;
	sc_start SC_FleeFood,1200000,30;
	sc_start SC_BATKFood,1200000,10;
	sc_start SC_MATKFood,120000,10;
	
	if (.@stone_time > 0)
		sc_start SC_STONE, .@stone_time, 0;
	if (.@curse_time > 0)
		sc_start SC_CURSE, .@curse_time, 0;
	end;	
}

or you could also try tricks like this to reapply the debuffs

  • MVP 1
  • 0
Posted
On 11/18/2023 at 10:48 AM, Emistry said:
-	script	buff_cmd	-1,{
	
OnInit:
	bindatcmd "buffs", strnpcinfo(0)+"::OnCommand",0,99;
	end;

OnCommand:
	if(getgroupid() <= 4) {
		message strcharinfo(0),"No, VIP.";
		end;
	}
	.@stone_time = getstatus(SC_STONE, 5);
	.@curse_time = getstatus(SC_CURSE, 5);
	skilleffect 34,0; sc_start SC_BLESSING,360000,10;
	skilleffect 29,0; sc_start SC_INCREASEAGI,360000,10;
	sc_start SC_ASPDPOTION2,360000,0;
	sc_start SC_STRFood,360000,10;
	sc_start SC_AGIFood,360000,10;
	sc_start SC_VITFood,360000,10;
	sc_start SC_INTFood,360000,10;
	sc_start SC_DEXFood,360000,10;
	sc_start SC_LUKFood,360000,10;
	sc_start SC_HitFood,1200000,30;
	sc_start SC_FleeFood,1200000,30;
	sc_start SC_BATKFood,1200000,10;
	sc_start SC_MATKFood,120000,10;
	
	if (.@stone_time > 0)
		sc_start SC_STONE, .@stone_time, 0;
	if (.@curse_time > 0)
		sc_start SC_CURSE, .@curse_time, 0;
	end;	
}

or you could also try tricks like this to reapply the debuffs

Perfect! thank you very much. /thx

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...