Jump to content
  • 0

Question

Posted

Hello. I have a Healer NPC that checks if player are vip to give better buffs, I wanted to make the npc auto heals when player gets close while checking if the player is also vip account. I tried but without success, I'm a beginner so if anyone could help me I'll be grateful.

 

//===== Cronus Script ===================================================
//= Buffer VIP e não VIP
//===== Criado para: ====================================================
//= Projeto AerieRO.
//===== Por: ============================================================
//= Slicer
//===== Versão Atual: ===================================================
//= 0.4
//===== Descrição: ======================================================
//= Da buffs nos jogadores, diferenciando os grupos entre vips e comuns.
//===== Changelog: ======================================================
//= 0.1 - Script criado
//= 0.2 - Adicionado checagem de level.
//= 0.3 - Atualizado para checagem de grupos.
//= 0.4 - Adicionado efeito.
//= 0.4.1 - Criado diversas duplicatas nas principais cidades.
//=======================================================================
-	script	Healer	-1,{

	if((getgroupid() < 1)) goto normal_player;
	if((getgroupid() >= 2)) goto vip_player_ouro;
	if((getgroupid() >= 1)) goto vip_player_prata;


normal_player:

    if(#Healer_CD > gettimetick(2)) {
    mes "Você só pode curar uma vez a cada 5 segundos.";
    end;
    }

specialeffect2 EF_HEAL2;	
specialeffect2 EF_BLESSING;
percentheal 100,100; // CURA HP & SP 100%
atcommand "@identifyall";
atcommand "@repairall";
sc_start SC_BLESSING,300000,5; // Blessing +5
sc_start SC_INCREASEAGI,300000,5; // Increase Agi +5
set #Healer_CD,gettimetick(2) + 5;
end;
	
vip_player_prata:
if(#Healer_CD > gettimetick(2)) {
    mes "Você só pode curar uma vez a cada 5 segundos.";
    end;
    }

specialeffect2 EF_HEAL2;
specialeffect2 EF_BLESSING;
percentheal 100,100; // CURA HP & SP 100%
atcommand "@identifyall";
atcommand "@repairall";
sc_start SC_STRFOOD,1800000,5;// FOR + 5 
sc_start SC_AGIFOOD,1800000,5;// AGI + 5
sc_start SC_VITFOOD,1800000,5;// VIT + 5
sc_start SC_INTFOOD,1800000,5;// INT + 5
sc_start SC_DEXFOOD,1800000,5;// DEX + 5
sc_start SC_LUKFOOD,1800000,5;// SOR + 5
sc_start SC_ASSUMPTIO,1800000,5; // Increase Assupition +5
sc_start SC_MATKPOTION,1800000,16;// MATK + 16
sc_start SC_ATKPOTION,1800000,16;// ATK + 16
sc_start SC_INCREASEAGI,1800000,5; // Increase Agi +5
sc_start SC_BLESSING,1800000,5; // Blessing +5
sc_start SC_ANGELUS,1800000,5; // Angelus +5
sc_start SC_MAGNIFICAT,1800000,5; // Magnificat +5
sc_start SC_GLORIA,1800000,5; // Gloria
sc_start SC_IMPOSITIO,1800000,5; // Imposition
sc_start SC_ENDURE,1800000,5; // Endure
set #Healer_CD,gettimetick(2) + 5;
end;


vip_player_ouro:
if(#Healer_CD > gettimetick(2)) {
    mes "Você só pode curar uma vez a cada 5 segundos.";
    end;
    }

specialeffect2 EF_HEAL2;
specialeffect2 EF_BLESSING;
percentheal 100,100; // CURA HP & SP 100%
atcommand "@identifyall";
atcommand "@repairall";
sc_start SC_STRFOOD,1800000,5;// FOR + 5 
sc_start SC_AGIFOOD,1800000,5;// AGI + 5
sc_start SC_VITFOOD,1800000,5;// VIT + 5
sc_start SC_INTFOOD,1800000,5;// INT + 5
sc_start SC_DEXFOOD,1800000,5;// DEX + 5
sc_start SC_LUKFOOD,1800000,5;// SOR + 5
sc_start SC_ASSUMPTIO,1800000,5; // Increase Assupition +5
sc_start SC_MATKPOTION,1800000,16;// MATK + 16
sc_start SC_ATKPOTION,1800000,16;// ATK + 16
sc_start SC_INCREASEAGI,1800000,5; // Increase Agi +5
sc_start SC_BLESSING,1800000,5; // Blessing +5
sc_start SC_ANGELUS,1800000,5; // Angelus +5
sc_start SC_MAGNIFICAT,1800000,5; // Magnificat +5
sc_start SC_GLORIA,1800000,5; // Gloria
sc_start SC_IMPOSITIO,1800000,5; // Imposition
sc_start SC_ENDURE,1800000,5; // Endure
set #Healer_CD,gettimetick(2) + 5;
end;

}

// Duplicates
//============================================================
alberta,25,240,6	duplicate(Healer)	Curandeira#alb	936
aldebaran,135,118,6	duplicate(Healer)	Curandeira#alde	936
amatsu,200,79,4	duplicate(Healer)	Curandeira#ama	936
ayothaya,207,169,6	duplicate(Healer)	Curandeira#ayo	936
comodo,184,158,6	duplicate(Healer)	Curandeira#com	936
einbech,57,36,6	duplicate(Healer)	Curandeira#einbe	936
einbroch,57,202,6	duplicate(Healer)	Curandeira#einbr	936
geffen,115,72,6	duplicate(Healer)	Curandeira#gef	936
gonryun,156,122,6	duplicate(Healer)	Curandeira#gon	936
hugel,89,150,6	duplicate(Healer)	Curandeira#hug	936
izlude,121,150,6	duplicate(Healer)	Curandeira#izl	936	//Pre-RE: (125,118)
jawaii,250,139,4	duplicate(Healer)	Curandeira#jaw	936
lighthalzen,149,100,6	duplicate(Healer)	Curandeira#lhz	936
louyang,226,103,4	duplicate(Healer)	Curandeira#lou	936
manuk,272,144,6	duplicate(Healer)	Curandeira#man	936
mid_camp,203,289,6	duplicate(Healer)	Curandeira#mid	936
moc_ruins,72,164,4	duplicate(Healer)	Curandeira#moc	936
morocc,153,97,6	duplicate(Healer)	Curandeira#mor	936
moscovia,220,191,4	duplicate(Healer)	Curandeira#mos	936
niflheim,212,182,5	duplicate(Healer)	Curandeira#nif	936
payon,179,106,4	duplicate(Healer)	Curandeira#pay	936
prontera,158,192,5	duplicate(Healer)	Curandeira#prt	936
rachel,125,116,6	duplicate(Healer)	Curandeira#rac	936
splendide,201,153,4	duplicate(Healer)	Curandeira#spl	936
thor_camp,249,74,4	duplicate(Healer)	Curandeira#thor	936
umbala,105,148,3	duplicate(Healer)	Curandeira#umb	936
veins,217,121,4	duplicate(Healer)	Curandeira#ve	936
xmas,143,136,4	duplicate(Healer)	Curandeira#xmas	936
yuno,164,45,4	duplicate(Healer)	Curandeira#yuno	936

// Duplicates (Renewal)
//============================================================
brasilis,194,221,6	duplicate(Healer)	Curandeira#bra	936
dewata,195,187,4	duplicate(Healer)	Curandeira#dew	936
dicastes01,201,194,4	duplicate(Healer)	Curandeira#dic	936
ecl_in01,45,60,4	duplicate(Healer)	Curandeira#ecl	936
malangdo,132,114,6	duplicate(Healer)	Curandeira#mal	936
malaya,227,204,6	duplicate(Healer)	Curandeira#ma	936
mora,55,152,4	duplicate(Healer)	Curandeira#mora	569

 

3 answers to this question

Recommended Posts

  • 1
Posted
-	script	Healer	-1,{
OnTouch:
	if((getgroupid() < 1)) goto normal_player;
	if((getgroupid() >= 2)) goto vip_player_ouro;
	if((getgroupid() >= 1)) goto vip_player_prata;
	end;

for this to work, add range or how far from the npc to trigger.


example, change

alberta,25,240,6	duplicate(Healer)	Curandeira#alb	936

to

alberta,25,240,6	duplicate(Healer)	Curandeira#alb	936,3,3

 

  • Like 1
  • 0
Posted
24 minutes ago, Magnetix said:
-	script	Healer	-1,{
OnTouch:
	if((getgroupid() < 1)) goto normal_player;
	if((getgroupid() >= 2)) goto vip_player_ouro;
	if((getgroupid() >= 1)) goto vip_player_prata;
	end;

for this to work, add range or how far from the npc to trigger.


example, change

alberta,25,240,6	duplicate(Healer)	Curandeira#alb	936

to

alberta,25,240,6	duplicate(Healer)	Curandeira#alb	936,3,3

 

You solved my problem, thank you. 😊

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...