Перейти к содержимому


Разрещение использовать скиллы ГМам на noskll картах


  • Авторизуйтесь для ответа в теме
В теме одно сообщение

#1 Гость__*

Гость__*
  • Гости

Отправлено 02 августа 2009 - 14:23

Понадобилось - сделал. Потестил - работает. В диффе стоит pc_isGM() < 99 просто заменить на нужный ГМлвл(к примеру ГМлвл Eva-00) 99 для теста было.
Разширение *.patch запрещено приходится выкладывать так:

Index: skill.c
===================================================================
--- skill.c	(revision 13941)
+++ skill.c	(working copy)
@@ -375,7 +375,7 @@
 			}
 			break;
 	}
-	return (map[m].flag.noskill);
+	return (map[m].flag.noskill && (pc_isGM(sd) < 99));
 }
 
 // [orn] - skill ok to cast? and when?	//homunculus

Патч под тортойс, но можно и ручками.

#2 Гость__*

Гость__*
  • Гости

Отправлено 04 августа 2009 - 03:18

Отключение triple attack, blitzbeat и double attack на noskill мапах.
skill.c
Index: skill.c
===================================================================
--- skill.c	(revision 13941)
+++ skill.c	(working copy)
@@ -457,7 +457,7 @@
 	{
 		if(sd) {
 			// Automatic trigger of Blitz Beat
-			if (pc_isfalcon(sd) && sd->status.weapon == W_BOW && (skill=pc_checkskill(sd,HT_BLITZBEAT))>0 &&
+			if (!map[sd->bl.m].flag.noskill && pc_isfalcon(sd) && sd->status.weapon == W_BOW && (skill=pc_checkskill(sd,HT_BLITZBEAT))>0 &&
 				rand()%1000 <= sstatus->luk*10/3+1 ) {
 				rate=(sd->status.job_level+9)/10;
 				skill_castend_damage_id(src,bl,HT_BLITZBEAT,(skill 0)
+				if (pc_checkskill(sd, MO_CHAINCOMBO) > 0 && !map[sd->bl.m].flag.noskill)
 					flag=1;
 				break;
 			case MO_CHAINCOMBO:


	
Index: battle.c
===================================================================
--- battle.c	(revision 13941)
+++ battle.c	(working copy)
@@ -1976,7 +1976,7 @@
 
 	if(sd && !skill_num && !flag.cri)
 	{	//Check for double attack.
-		if(((skill_lv = pc_checkskill(sd,TF_DOUBLE)) > 0 && sd->weapontype1 == W_DAGGER)
+		if(((skill_lv = pc_checkskill(sd,TF_DOUBLE)) > 0 && sd->weapontype1 == W_DAGGER && !map[sd->bl.m].flag.noskill)
 			||(sd->double_rate > 0 && sd->weapontype1 != W_FIST)) //Will fail bare-handed
 		{	//Success chance is not added, the higher one is used [Skotlex]
 			if (rand()%100 < (5*skill_lv>sd->double_rate?5*skill_lv:sd->double_rate))


Содержание патчей под тортойс


Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 скрытых пользователей

Top.Mail.Ru