예제 #1
0
void disease_monst(cCreature *which_m,short how_much)
{
	magic_adjust(which_m,&how_much);
	which_m->status[7] = minmax(-8,8, which_m->status[7] + how_much);
	monst_spell_note(which_m->number,(how_much == 0) ? 10 : 25);

}
예제 #2
0
void dumbfound_monst(cCreature *which_m,short how_much)
{
	magic_adjust(which_m,&how_much);
	which_m->status[9] = minmax(-8,8, which_m->status[9] + how_much);
	monst_spell_note(which_m->number,(how_much == 0) ? 10 : 22);

}
예제 #3
0
void web_monst(cCreature *which_m,short how_much)
{
	magic_adjust(which_m,&how_much);
	which_m->status[6] = minmax(-8,8, which_m->status[6] + how_much);
	monst_spell_note(which_m->number,(how_much == 0) ? 10 : 19);

}
예제 #4
0
void scare_monst(cCreature *which_m,short how_much)
{
	magic_adjust(which_m,&how_much);
	which_m->morale = which_m->morale - how_much;
	monst_spell_note(which_m->number,(how_much == 0) ? 10 : 1);

}
예제 #5
0
void acid_monst(cCreature *which_m,short how_much)
{
	magic_adjust(which_m,&how_much);
	which_m->status[13] = minmax(-8,8, which_m->status[13] + how_much);
	monst_spell_note(which_m->number,31);

}
예제 #6
0
파일: creature.cpp 프로젝트: Ircher/CBoE
void cCreature::acid(int how_much) {
	how_much = magic_adjust(how_much);
	apply_status(eStatus::ACID, how_much);
	if(how_much >= 0)
		spell_note(31);
	else
		spell_note(48);
}
예제 #7
0
파일: creature.cpp 프로젝트: Ircher/CBoE
void cCreature::dumbfound(int how_much) {
	how_much = magic_adjust(how_much);
	apply_status(eStatus::DUMB, how_much);
	if(how_much >= 0)
		spell_note((how_much == 0) ? 10 : 22);
	else
		spell_note(39);
	
}
예제 #8
0
파일: creature.cpp 프로젝트: Ircher/CBoE
void cCreature::disease(int how_much) {
	how_much = magic_adjust(how_much);
	apply_status(eStatus::DISEASE, how_much);
	if(how_much >= 0)
		spell_note((how_much == 0) ? 10 : 25);
	else
		spell_note(38);
	
}
예제 #9
0
파일: creature.cpp 프로젝트: Ircher/CBoE
void cCreature::scare(int how_much) {
	how_much = magic_adjust(how_much);
	morale -= how_much;
	if(how_much >= 0)
		spell_note((how_much == 0) ? 10 : 1);
	else
		spell_note(47);
	
}
예제 #10
0
파일: creature.cpp 프로젝트: Ircher/CBoE
void cCreature::web(int how_much) {
	how_much = magic_adjust(how_much);
	apply_status(eStatus::WEBS, how_much);
	if(how_much >= 0)
		spell_note((how_much == 0) ? 10 : 19);
	else
		spell_note(37);
	
}
예제 #11
0
파일: creature.cpp 프로젝트: Ircher/CBoE
void cCreature::curse(int how_much) {
	how_much = magic_adjust(how_much);
	apply_status(eStatus::BLESS_CURSE, -how_much);
	if(how_much >= 0)
		spell_note((how_much == 0) ? 10 : 5);
	else
		spell_note(36);
	
}
예제 #12
0
파일: creature.cpp 프로젝트: Ircher/CBoE
void cCreature::slow(int how_much) {
	how_much = magic_adjust(how_much);
	apply_status(eStatus::HASTE_SLOW, -how_much);
	if(how_much >= 0)
		spell_note((how_much == 0) ? 10 : 2);
	else
		spell_note(35);
	
}
예제 #13
0
파일: creature.cpp 프로젝트: Ircher/CBoE
void cCreature::drain_sp(int drain) {
	drain = magic_adjust(drain);
	if(drain > 0) {
		if(mu > 0 && mp > 4)
			drain = min(mp, drain / 3);
		else if(cl > 0 && mp > 10)
			drain = min(mp, drain / 2);
		mp -= drain;
		if(mp < 0) mp = 0;
	}
}