Rebel 23 Posted June 3, 2013 (edited) Hi can someone tell me what is wrong with this script.. I used this on rA and it works perfectly but when i used it here it get an [Debug] on map server.. and the headgear was duplicating after converting it to costume.. /*========================================== * Costume Items *------------------------------------------*/BUILDIN(costume){ int i = -1, num, ep; TBL_PC *sd; num = script_getnum(st,2); // Equip Slot sd = script_rid2sd(st); if( sd == NULL ) return 0; if( num > 0 && num <= ARRAYLENGTH(equip) ) i = pc_checkequip(sd, equip[num - 1]); if( i < 0 ) return 0; ep = sd->status.inventory[i].equip; if( !(ep&EQP_HEAD_LOW) && !(ep&EQP_HEAD_MID) && !(ep&EQP_HEAD_TOP) ) return 0; logs->pick_pc(sd, LOG_TYPE_SCRIPT, -1, &sd->status.inventory[i],sd->inventory_data[i]); pc_unequipitem(sd,i,2); clif->delitem(sd,i,1,3); // -------------------------------------------------------------------- sd->status.inventory[i].refine = 0; sd->status.inventory[i].attribute = 0; sd->status.inventory[i].card[0] = CARD0_CREATE; sd->status.inventory[i].card[1] = 0; sd->status.inventory[i].card[2] = GetWord(battle_config.reserved_costume_id, 0); sd->status.inventory[i].card[3] = GetWord(battle_config.reserved_costume_id, 1); if( ep&EQP_HEAD_TOP ) { ep &= ~EQP_HEAD_TOP; ep |= EQP_COSTUME_HEAD_TOP; } if( ep&EQP_HEAD_LOW ) { ep &= ~EQP_HEAD_LOW; ep |= EQP_COSTUME_HEAD_LOW; } if( ep&EQP_HEAD_MID ) { ep &= ~EQP_HEAD_MID; ep |= EQP_COSTUME_HEAD_MID; } // -------------------------------------------------------------------- logs->pick_pc(sd, LOG_TYPE_SCRIPT, 1, &sd->status.inventory[i],sd->inventory_data[i]); clif->additem(sd,i,1,0); pc_equipitem(sd,i,ep); clif->misceffect(&sd->bl,3); return 0;}/*========================================== * Costume Items *------------------------------------------*/BUILDIN(costume){ int i = -1, num, ep; TBL_PC *sd; num = script_getnum(st,2); // Equip Slot sd = script_rid2sd(st); if( sd == NULL ) return 0; if( num > 0 && num <= ARRAYLENGTH(equip) ) i = pc_checkequip(sd, equip[num - 1]); if( i < 0 ) return 0; ep = sd->status.inventory[i].equip; if( !(ep&EQP_HEAD_LOW) && !(ep&EQP_HEAD_MID) && !(ep&EQP_HEAD_TOP) ) return 0; logs->pick_pc(sd, LOG_TYPE_SCRIPT, -1, &sd->status.inventory[i],sd->inventory_data[i]); pc_unequipitem(sd,i,2); clif->delitem(sd,i,1,3); // -------------------------------------------------------------------- sd->status.inventory[i].refine = 0; sd->status.inventory[i].attribute = 0; sd->status.inventory[i].card[0] = CARD0_CREATE; sd->status.inventory[i].card[1] = 0; sd->status.inventory[i].card[2] = GetWord(battle_config.reserved_costume_id, 0); sd->status.inventory[i].card[3] = GetWord(battle_config.reserved_costume_id, 1); if( ep&EQP_HEAD_TOP ) { ep &= ~EQP_HEAD_TOP; ep |= EQP_COSTUME_HEAD_TOP; } if( ep&EQP_HEAD_LOW ) { ep &= ~EQP_HEAD_LOW; ep |= EQP_COSTUME_HEAD_LOW; } if( ep&EQP_HEAD_MID ) { ep &= ~EQP_HEAD_MID; ep |= EQP_COSTUME_HEAD_MID; } // -------------------------------------------------------------------- logs->pick_pc(sd, LOG_TYPE_SCRIPT, 1, &sd->status.inventory[i],sd->inventory_data[i]); clif->additem(sd,i,1,0); pc_equipitem(sd,i,ep); clif->misceffect(&sd->bl,3); return 0;} Thanks! Also attached is the full source. Or else just convert it to plugin. costume.rarUnavailable Edited June 3, 2013 by Hercules Quote Share this post Link to post Share on other sites
Hi can someone tell me what is wrong with this script.. I used this on rA and it works perfectly but when i used it here it get an [Debug] on map server.. and the headgear was duplicating after converting it to costume..
Thanks! Also attached is the full source. Or else just convert it to plugin.
costume.rarUnavailable
Edited by HerculesShare this post
Link to post
Share on other sites