Jump to content
  • 0

help How to made Healer only for guild member


yodaGG

Question


  • Group:  Members
  • Topic Count:  11
  • Topics Per Day:  0.01
  • Content Count:  44
  • Reputation:   0
  • Joined:  02/14/22
  • Last Seen:  

hi everyone, can help me to add guild member healer plese ?

i use this script for my buff and VIP buff
need item "7854 (VIP Badge, Type:ETC"  for use VIP buff.

but i want add 1 more item "7608  (Premium Ticket) Type:ETC" for use VIP buff, only need 1 guild member have this item for 1 guild can use VIP buff.
 

Quote

prontera,158,192,3    script    Healer    621,{

    specialeffect2 EF_HEAL2; percentheal 100,100;
    specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,600000,10;
    specialeffect2 EF_ASSUMPTIO; sc_start SC_ASSUMPTIO,600000,5;
    specialeffect2 EF_BLESSING; sc_start SC_BLESSING,600000,10;
    specialeffect2 EF_ANGELUS; sc_start SC_ANGELUS,600000,10;
    specialeffect2 EF_GLORIA; sc_start SC_GLORIA,600000,5;
    
    if ( countitem ( .VIP_item ) ) {
        specialeffect2 EF_BLESSING; sc_start SC_BLESSING,600000,10;
        specialeffect2 HP_ASSUMPTIO; sc_start HP_ASSUMPTIO,600000,10;
        specialeffect2 EF_ANGELUS; sc_start SC_ANGELUS,600000,10;
        specialeffect2 EF_SUFFRAGIUM; sc_start SC_SUFFRAGIUM,600000,3;
        specialeffect2 EF_IMPOSITIO; sc_start SC_IMPOSITIO,600000,5;
        specialeffect2 EF_GLORIA; sc_start SC_GLORIA,600000,5;
        specialeffect2 EF_MAGNIFICAT; sc_start SC_MAGNIFICAT,600000,5;
        specialeffect2 EF_CHEMICALPROTECTIOn; sc_start SC_CP_WEAPON,600000,5;
        sc_start SC_CP_ARMOR,600000,5;
        sc_start SC_CP_SHIELD,600000,5;
        sc_start SC_CP_HELM,600000,5;
        specialeffect2 EF_ASSUMPTIO; sc_start SC_ASSUMPTIO,600000,5;
        sc_start SC_ADRENALINE2,600000,1;
        specialeffect2 EF_MAXPOWER; sc_start SC_MAXIMIZEPOWER,600000,5;
        specialeffect2 EF_PERFECTION; sc_start SC_WEAPONPERFECTION,600000,5;
        specialeffect2 EF_ENDURE; sc_start SC_ENDURE,600000,10;
        sc_start SC_KAUPE,600000,3;
        sc_start SC_KAITE,600000,7;
        sc_start SC_STRFOOD,600000,5;
        sc_start SC_AGIFOOD,600000,5;
        sc_start SC_VITFOOD,600000,5;
        sc_start SC_INTFOOD,600000,5;
        sc_start SC_DEXFOOD,600000,5;
        sc_start SC_LUKFOOD,600000,5;

        switch ( CLASS ) {
            case 18:
            case 4019:
            case 4071:
            case 4078:
                skilleffect "SL_ALCHEMIST",0;
                sc_start4 SC_SPIRIT,9999999,5,455,0,0;
                break;
            case 15:
            case 4016:
            case 4070:
            case 4077:
                skilleffect "SL_MONK",0;
                sc_start4 SC_SPIRIT,9999999,5,447,0,0;
                break;
            case 4047:
                skilleffect "SL_STAR",0;
                sc_start4 SC_SPIRIT,9999999,5,448,0,0;
                break;
            case 16:
            case 4017:
            case 4067:
            case 4074:
                skilleffect "SL_SAGE",0;
                sc_start4 SC_SPIRIT,9999999,5,449,0,0;
                break;
            case 14:
            case 4015:
            case 4066:
            case 4073:
                skilleffect "SL_CRUSADER",0;
                sc_start4 SC_SPIRIT,9999999,5,450,0,0;
                break;
            case 23:
            case 4190:
                skilleffect "SL_SUPERNOVICE",0;
                sc_start4 SC_SPIRIT,9999999,5,451,0,0;
                break;
            case 7:
            case 4008:
            case 4054:
            case 4060:
                skilleffect "SL_KNIGHT",0;
                sc_start4 SC_SPIRIT,9999999,5,452,0,0;
                break;
            case 9:
            case 4010:
            case 4055:
            case 4061:
                skilleffect "SL_WIZARD",0;
                sc_start4 SC_SPIRIT,9999999,5,453,0,0;
                break;
            case 8:
            case 4009:
            case 4057:
            case 4063:
                skilleffect "SL_PRIEST",0;
                sc_start4 SC_SPIRIT,9999999,5,454,0,0;
                break;
            case 19:
            case 20:
            case 4020:
            case 4021:
            case 4068:
            case 4069:
            case 4075:
            case 4076:
                skilleffect "SL_BARDDANCER",0;
                sc_start4 SC_SPIRIT,9999999,5,455,0,0;
                break;
            case 17:
            case 4018:
            case 4072:
            case 4079:
                skilleffect "SL_ROGUE",0;
                sc_start4 SC_SPIRIT,9999999,5,456,0,0;
                break;
            case 12:
            case 4013:
            case 4059:
            case 4065:
                skilleffect "SL_ASSASIN",0;
                sc_start4 SC_SPIRIT,9999999,5,457,0,0;
                break;
            case 10:
            case 4011:
                skilleffect "SL_BLACKSMITH",0;
                sc_start4 SC_SPIRIT,9999999,5,458,0,0;
                break;
            case 11:
            case 4012:
            case 4056:
            case 4062:
                skilleffect "SL_HUNTER",0;
                sc_start4 SC_SPIRIT,9999999,5,460,0,0;
                break;
            case 4049:
                skilleffect "SL_SOULLINKER",0;
                sc_start4 SC_SPIRIT,9999999,5,461,0,0;
                break;
            default:
                break;
        }
    }
    end;
    
OnInit:
    .VIP_item = 7854; //itemId
    end;
}

 

===
i aldy search and find this
 

Quote

if( getguildname( getcharid(2) )=="Fratenity" )

}

 

but i dnt knw where i can put this code


thankyouu

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

  • Group:  Forum Moderator
  • Topic Count:  33
  • Topics Per Day:  0.01
  • Content Count:  1268
  • Reputation:   382
  • Joined:  02/03/12
  • Last Seen:  

@yodaGG

prontera,158,192,3	script	Healer	621,{
		specialeffect2 EF_HEAL2; percentheal 100,100;
		specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,600000,10;
		specialeffect2 EF_ASSUMPTIO; sc_start SC_ASSUMPTIO,600000,5;
		specialeffect2 EF_BLESSING; sc_start SC_BLESSING,600000,10;
		specialeffect2 EF_ANGELUS; sc_start SC_ANGELUS,600000,10;
		specialeffect2 EF_GLORIA; sc_start SC_GLORIA,600000,5;
		
		if (countitem(.VIP_item) || countitem(.Premium_Ticket)) {
			specialeffect2 EF_BLESSING; sc_start SC_BLESSING,600000,10;
			specialeffect2 HP_ASSUMPTIO; sc_start HP_ASSUMPTIO,600000,10;
			specialeffect2 EF_ANGELUS; sc_start SC_ANGELUS,600000,10;
			specialeffect2 EF_SUFFRAGIUM; sc_start SC_SUFFRAGIUM,600000,3;
			specialeffect2 EF_IMPOSITIO; sc_start SC_IMPOSITIO,600000,5;
			specialeffect2 EF_GLORIA; sc_start SC_GLORIA,600000,5;
			specialeffect2 EF_MAGNIFICAT; sc_start SC_MAGNIFICAT,600000,5;
			specialeffect2 EF_CHEMICALPROTECTIOn; sc_start SC_CP_WEAPON,600000,5;
			sc_start SC_CP_ARMOR,600000,5;
			sc_start SC_CP_SHIELD,600000,5;
			sc_start SC_CP_HELM,600000,5;
			specialeffect2 EF_ASSUMPTIO; sc_start SC_ASSUMPTIO,600000,5;
			sc_start SC_ADRENALINE2,600000,1;
			specialeffect2 EF_MAXPOWER; sc_start SC_MAXIMIZEPOWER,600000,5;
			specialeffect2 EF_PERFECTION; sc_start SC_WEAPONPERFECTION,600000,5;
			specialeffect2 EF_ENDURE; sc_start SC_ENDURE,600000,10;
			sc_start SC_KAUPE,600000,3;
			sc_start SC_KAITE,600000,7;
			sc_start SC_STRFOOD,600000,5;
			sc_start SC_AGIFOOD,600000,5;
			sc_start SC_VITFOOD,600000,5;
			sc_start SC_INTFOOD,600000,5;
			sc_start SC_DEXFOOD,600000,5;
			sc_start SC_LUKFOOD,600000,5;

			switch ( CLASS ) {
				case 18:
				case 4019:
				case 4071:
				case 4078:
					skilleffect "SL_ALCHEMIST",0;
					sc_start4 SC_SPIRIT,9999999,5,455,0,0;
					break;
				case 15:
				case 4016:
				case 4070:
				case 4077:
					skilleffect "SL_MONK",0;
					sc_start4 SC_SPIRIT,9999999,5,447,0,0;
					break;
				case 4047:
					skilleffect "SL_STAR",0;
					sc_start4 SC_SPIRIT,9999999,5,448,0,0;
					break;
				case 16:
				case 4017:
				case 4067:
				case 4074:
					skilleffect "SL_SAGE",0;
					sc_start4 SC_SPIRIT,9999999,5,449,0,0;
					break;
				case 14:
				case 4015:
				case 4066:
				case 4073:
					skilleffect "SL_CRUSADER",0;
					sc_start4 SC_SPIRIT,9999999,5,450,0,0;
					break;
				case 23:
				case 4190:
					skilleffect "SL_SUPERNOVICE",0;
					sc_start4 SC_SPIRIT,9999999,5,451,0,0;
					break;
				case 7:
				case 4008:
				case 4054:
				case 4060:
					skilleffect "SL_KNIGHT",0;
					sc_start4 SC_SPIRIT,9999999,5,452,0,0;
					break;
				case 9:
				case 4010:
				case 4055:
				case 4061:
					skilleffect "SL_WIZARD",0;
					sc_start4 SC_SPIRIT,9999999,5,453,0,0;
					break;
				case 8:
				case 4009:
				case 4057:
				case 4063:
					skilleffect "SL_PRIEST",0;
					sc_start4 SC_SPIRIT,9999999,5,454,0,0;
					break;
				case 19:
				case 20:
				case 4020:
				case 4021:
				case 4068:
				case 4069:
				case 4075:
				case 4076:
					skilleffect "SL_BARDDANCER",0;
					sc_start4 SC_SPIRIT,9999999,5,455,0,0;
					break;
				case 17:
				case 4018:
				case 4072:
				case 4079:
					skilleffect "SL_ROGUE",0;
					sc_start4 SC_SPIRIT,9999999,5,456,0,0;
					break;
				case 12:
				case 4013:
				case 4059:
				case 4065:
					skilleffect "SL_ASSASIN",0;
					sc_start4 SC_SPIRIT,9999999,5,457,0,0;
					break;
				case 10:
				case 4011:
					skilleffect "SL_BLACKSMITH",0;
					sc_start4 SC_SPIRIT,9999999,5,458,0,0;
					break;
				case 11:
				case 4012:
				case 4056:
				case 4062:
					skilleffect "SL_HUNTER",0;
					sc_start4 SC_SPIRIT,9999999,5,460,0,0;
					break;
				case 4049:
					skilleffect "SL_SOULLINKER",0;
					sc_start4 SC_SPIRIT,9999999,5,461,0,0;
					break;
				default:
					break;
			}
		}
	end;
	
OnInit:
	.VIP_item = 7854; //itemId
	.Premium_Ticket = 7608;
	end;
}

 

This part:

if (countitem(.VIP_item) || countitem(.Premium_Ticket)) {

Means if the player has at least 1 of .VIP_item or .Premium_Ticket allow.

If it helps I made a small truth table for you.

P

q

&&(and)

||(or)

T

T

T

T

T

F

F

T

F

T

F

T

F

F

F

F

It's good to keep in mind that these are logical operators and as such aren't entirely identical to bitwise operators. Although both can be used in a similar way.

Here's a table for the bitwise operators that you can use in rAthena. (Excluding bitwise NOT(~))

P

q

&(AND)

|(OR)

^(XOR)

T

T

T

T

F

T

F

F

T

T

F

T

F

T

T

F

F

F

F

F

 


 


 

Link to comment
Share on other sites

  • 1

  • Group:  Forum Moderator
  • Topic Count:  33
  • Topics Per Day:  0.01
  • Content Count:  1268
  • Reputation:   382
  • Joined:  02/03/12
  • Last Seen:  

@yodaGG

If the guild master is offline, it's a bit annoying to get that information because there are many places where the item could be.

.@gm_aid = getcharid(3,getguildmaster(getcharid(2)));
.@gm_cid = getguildmasterid(getcharid(2));

if(isloggedin(.@gm_aid, .@gm_cid)) {
	if(countitem(.Premium_Ticket,.@gm_aid)) {
		// Do buffs
	}
} else { // If they Guild Master is not online we search the SQL database.
	.@inventory = max(query_sql("SELECT `nameid` FROM `inventory` WHERE `char_id` = "+.@gm_cid+";",.@id), 0);
	.@storage = max(query_sql("SELECT `nameid` FROM `storage` WHERE `char_id` = "+.@gm_cid+";",.@id), 0);
	if(.@inventory||.@storage) {
		// Do buffs
	}
}

I'm not sure what the SQL tables and column names are strictly off the top of my head, so the above example probably won't work, but you could fill in the correct details.

Link to comment
Share on other sites

  • 0

  • Group:  Forum Moderator
  • Topic Count:  33
  • Topics Per Day:  0.01
  • Content Count:  1268
  • Reputation:   382
  • Joined:  02/03/12
  • Last Seen:  

@yodaGG Hard to say exactly what you want since English doesn't seem to be your first language, but I've added what I think you're asking for, and maybe you can figure it out from there.

 

prontera,158,192,3	script	Healer	621,{
	if (getguildname(getcharid(2)) == "Fratenity") {
		specialeffect2 EF_HEAL2; percentheal 100,100;
		specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,600000,10;
		specialeffect2 EF_ASSUMPTIO; sc_start SC_ASSUMPTIO,600000,5;
		specialeffect2 EF_BLESSING; sc_start SC_BLESSING,600000,10;
		specialeffect2 EF_ANGELUS; sc_start SC_ANGELUS,600000,10;
		specialeffect2 EF_GLORIA; sc_start SC_GLORIA,600000,5;
		
		if (countitem ( .VIP_item ) || countitem(.Premium_Ticket)) {
			specialeffect2 EF_BLESSING; sc_start SC_BLESSING,600000,10;
			specialeffect2 HP_ASSUMPTIO; sc_start HP_ASSUMPTIO,600000,10;
			specialeffect2 EF_ANGELUS; sc_start SC_ANGELUS,600000,10;
			specialeffect2 EF_SUFFRAGIUM; sc_start SC_SUFFRAGIUM,600000,3;
			specialeffect2 EF_IMPOSITIO; sc_start SC_IMPOSITIO,600000,5;
			specialeffect2 EF_GLORIA; sc_start SC_GLORIA,600000,5;
			specialeffect2 EF_MAGNIFICAT; sc_start SC_MAGNIFICAT,600000,5;
			specialeffect2 EF_CHEMICALPROTECTIOn; sc_start SC_CP_WEAPON,600000,5;
			sc_start SC_CP_ARMOR,600000,5;
			sc_start SC_CP_SHIELD,600000,5;
			sc_start SC_CP_HELM,600000,5;
			specialeffect2 EF_ASSUMPTIO; sc_start SC_ASSUMPTIO,600000,5;
			sc_start SC_ADRENALINE2,600000,1;
			specialeffect2 EF_MAXPOWER; sc_start SC_MAXIMIZEPOWER,600000,5;
			specialeffect2 EF_PERFECTION; sc_start SC_WEAPONPERFECTION,600000,5;
			specialeffect2 EF_ENDURE; sc_start SC_ENDURE,600000,10;
			sc_start SC_KAUPE,600000,3;
			sc_start SC_KAITE,600000,7;
			sc_start SC_STRFOOD,600000,5;
			sc_start SC_AGIFOOD,600000,5;
			sc_start SC_VITFOOD,600000,5;
			sc_start SC_INTFOOD,600000,5;
			sc_start SC_DEXFOOD,600000,5;
			sc_start SC_LUKFOOD,600000,5;

			switch ( CLASS ) {
				case 18:
				case 4019:
				case 4071:
				case 4078:
					skilleffect "SL_ALCHEMIST",0;
					sc_start4 SC_SPIRIT,9999999,5,455,0,0;
					break;
				case 15:
				case 4016:
				case 4070:
				case 4077:
					skilleffect "SL_MONK",0;
					sc_start4 SC_SPIRIT,9999999,5,447,0,0;
					break;
				case 4047:
					skilleffect "SL_STAR",0;
					sc_start4 SC_SPIRIT,9999999,5,448,0,0;
					break;
				case 16:
				case 4017:
				case 4067:
				case 4074:
					skilleffect "SL_SAGE",0;
					sc_start4 SC_SPIRIT,9999999,5,449,0,0;
					break;
				case 14:
				case 4015:
				case 4066:
				case 4073:
					skilleffect "SL_CRUSADER",0;
					sc_start4 SC_SPIRIT,9999999,5,450,0,0;
					break;
				case 23:
				case 4190:
					skilleffect "SL_SUPERNOVICE",0;
					sc_start4 SC_SPIRIT,9999999,5,451,0,0;
					break;
				case 7:
				case 4008:
				case 4054:
				case 4060:
					skilleffect "SL_KNIGHT",0;
					sc_start4 SC_SPIRIT,9999999,5,452,0,0;
					break;
				case 9:
				case 4010:
				case 4055:
				case 4061:
					skilleffect "SL_WIZARD",0;
					sc_start4 SC_SPIRIT,9999999,5,453,0,0;
					break;
				case 8:
				case 4009:
				case 4057:
				case 4063:
					skilleffect "SL_PRIEST",0;
					sc_start4 SC_SPIRIT,9999999,5,454,0,0;
					break;
				case 19:
				case 20:
				case 4020:
				case 4021:
				case 4068:
				case 4069:
				case 4075:
				case 4076:
					skilleffect "SL_BARDDANCER",0;
					sc_start4 SC_SPIRIT,9999999,5,455,0,0;
					break;
				case 17:
				case 4018:
				case 4072:
				case 4079:
					skilleffect "SL_ROGUE",0;
					sc_start4 SC_SPIRIT,9999999,5,456,0,0;
					break;
				case 12:
				case 4013:
				case 4059:
				case 4065:
					skilleffect "SL_ASSASIN",0;
					sc_start4 SC_SPIRIT,9999999,5,457,0,0;
					break;
				case 10:
				case 4011:
					skilleffect "SL_BLACKSMITH",0;
					sc_start4 SC_SPIRIT,9999999,5,458,0,0;
					break;
				case 11:
				case 4012:
				case 4056:
				case 4062:
					skilleffect "SL_HUNTER",0;
					sc_start4 SC_SPIRIT,9999999,5,460,0,0;
					break;
				case 4049:
					skilleffect "SL_SOULLINKER",0;
					sc_start4 SC_SPIRIT,9999999,5,461,0,0;
					break;
				default:
					break;
			}
		}
	}
	end;
	
OnInit:
	.VIP_item = 7854; //itemId
	.Premium_Ticket = 7608;
	end;
}

 

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  11
  • Topics Per Day:  0.01
  • Content Count:  44
  • Reputation:   0
  • Joined:  02/14/22
  • Last Seen:  

@Skorm
Sorry for my bad englsh. but thankyou for ur replay.

Quote

OnInit:
    .VIP_item = 7854; //itemId
    end;
}
////////////////////////
OnInit:
    .VIPGuild_item = 7608; //itemId
    end;
}

I mean, i want add 1 more item for VIP buff accsess  (" .VIPGuild_item = 7608; //itemId").
if Guild Master / Member  Have this item "7608" so 1 guild can accsess VIP buff, same as   .VIP_item = 7854;//itemId
 

Quote
if (countitem(.VIP_item) || countitem(.Premium_Ticket)) {

Yess, this code fore add more item.
but i want, if guild master have 7608  (Premium Ticket). member also can use VIP buff same as Guild Master even member doesnt have the ticket.


Thankyou so mch for helping

 

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  11
  • Topics Per Day:  0.01
  • Content Count:  44
  • Reputation:   0
  • Joined:  02/14/22
  • Last Seen:  

On 11/29/2022 at 4:47 AM, Skorm said:

@yodaGG

If the guild master is offline, it's a bit annoying to get that information because there are many places where the item could be.

.@gm_aid = getcharid(3,getguildmaster(getcharid(2)));
.@gm_cid = getguildmasterid(getcharid(2));

if(isloggedin(.@gm_aid, .@gm_cid)) {
	if(countitem(.Premium_Ticket,.@gm_aid)) {
		// Do buffs
	}
} else { // If they Guild Master is not online we search the SQL database.
	.@inventory = max(query_sql("SELECT `nameid` FROM `inventory` WHERE `char_id` = "+.@gm_cid+";",.@id), 0);
	.@storage = max(query_sql("SELECT `nameid` FROM `storage` WHERE `char_id` = "+.@gm_cid+";",.@id), 0);
	if(.@inventory||.@storage) {
		// Do buffs
	}
}

I'm not sure what the SQL tables and column names are strictly off the top of my head, so the above example probably won't work, but you could fill in the correct details.

i just use  this
 

Quote
.@gm_aid = getcharid(3,getguildmaster(getcharid(2)));
.@gm_cid = getguildmasterid(getcharid(2));

if(isloggedin(.@gm_aid, .@gm_cid)) {
	if(countitem(.Premium_Ticket,.@gm_aid)) {
		// Do buffs
	}

but when player have no guild alwys got error :
 

Quote

[Error]: buildin_getcharid: Player with nick 'null' is not found.

 

i dont know how write condition when player have no guild.
im trying use :

Quote

else{
    getcharid(2)==0;{
    specialeffect2 EF_INCAGILITY; sc_start SC_INCREASEAGI,600000,10;
    specialeffect2 EF_ASSUMPTIO; sc_start SC_ASSUMPTIO,600000,5;
    specialeffect2 EF_BLESSING; sc_start SC_BLESSING,600000,10;
        }

but still error.
can u help me sir

 

Link to comment
Share on other sites

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.

×
×
  • Create New...