RagnarokOnline2015 Опубликовано 23 августа, 2015 Жалоба Поделиться Опубликовано 23 августа, 2015 Помогите исправить ошибку скила WS_WEAPONREFINE у вайтсмита !использую pre-renewal HerculesПытаюсь заточить Weapon LV 1 ломается на +2 при 200 lukПомогите разораться в чём проблема Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 23 августа, 2015 Жалоба Поделиться Опубликовано 23 августа, 2015 (изменено) Помогите исправить ошибку скила WS_WEAPONREFINE у вайтсмита !использую pre-renewal HerculesПытаюсь заточить Weapon LV 1 ломается на +2при 200 lukПомогите разораться в чём проблемаЗаходим в clif.c ищем кусок начинается он с/// Presents a list of weapon items that can be refined [Taken from jAthena] (ZC_NOTIFY_WEAPONITEMLIST).заканчиваетсяsd->menuskill_id = WS_WEAPONREFINE;sd->menuskill_val = skill_lv;}}и весь этот кусок меняем на/// Presents a list of weapon items that can be refined [Taken from jAthena] (ZC_NOTIFY_WEAPONITEMLIST)./// 0221 <packet len>.W { <index>.W <name id>.W <refine>.B <card1>.W <card2>.W <card3>.W <card4>.W }*void clif_item_refine_list(struct map_session_data *sd){int i,c;int fd;uint16 skill_lv;int refine_item[5];nullpo_retv(sd);skill_lv = pc_checkskill(sd,WS_WEAPONREFINE);fd=sd->fd;refine_item[0] = -1;refine_item[1] = pc_search_inventory(sd,ITEMID_PHRACON);refine_item[2] = pc_search_inventory(sd,ITEMID_EMVERETARCON);refine_item[3] = refine_item[4] = pc_search_inventory(sd,ITEMID_ORIDECON);WFIFOHEAD(fd, MAX_INVENTORY * 13 + 4);WFIFOW(fd,0)=0x221;for(i=c=0;i<MAX_INVENTORY;i++){unsigned char wlv;if(sd->status.inventory[i].nameid > 0 && sd->status.inventory[i].refine < skill_lv &&sd->status.inventory[i].identify && (wlv=itemdb_wlv(sd->status.inventory[i].nameid)) >=1 &&refine_item[wlv]!=-1 && !(sd->status.inventory[i].equip&EQP_ARMS)){WFIFOW(fd,c*13+ 4)=i+2;WFIFOW(fd,c*13+ 6)=sd->status.inventory[i].nameid;WFIFOB(fd,c*13+ 8)=sd->status.inventory[i].refine;clif_addcards(WFIFOP(fd,c*13+9), &sd->status.inventory[i]);c++;}}WFIFOW(fd,2)=c*13+4;WFIFOSET(fd,WFIFOW(fd,2));if (c > 0) {sd->menuskill_id = WS_WEAPONREFINE;sd->menuskill_val = skill_lv;}}и пробуем компилировать серв)так же советую проверить db/pre-re/refine_db.txtтам должно быть вот так // Armors0,70,0,0,100:0,100:0,100:0,100:0,60:0,30:0,30:0,15:0,15:0,10:0// Level 1 weapons1,200,8,300,100:0,100:0,100:0,100:0,100:0,100:0,100:0,30:0,30:0,10:0// Level 2 weapons2,300,7,500,100:0,100:0,100:0,100:0,100:0,100:0,40:0,20:0,20:0,10:0// Level 3 weapons3,500,6,800,100:0,100:0,100:0,100:0,100:0,60:0,40:0,15:0,15:0,10:0// Level 4 weapons4,700,5,1300,100:0,100:0,100:0,100:0,60:0,30:0,30:0,15:0,15:0,10:0 Изменено 23 августа, 2015 пользователем Fizik 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
RagnarokOnline2015 Опубликовано 23 августа, 2015 Автор Жалоба Поделиться Опубликовано 23 августа, 2015 Спасибо помогло Ссылка на комментарий Поделиться на другие сайты Поделиться
Fizik Опубликовано 23 августа, 2015 Жалоба Поделиться Опубликовано 23 августа, 2015 (изменено) Спасибо помоглоВсегда пожалуйста) На самом деле refinedb.txt и скил Смита (точка) связанны если поставить в дб 100 на всё то и смит точит с шансом 100% если правильно помню там разница 20-25%, Если шанс заточки например (mace [4]+9 20-25%) то смитом шанс 40-45% Изменено 24 августа, 2015 пользователем Fizik 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения