Jump to content

  •  

razermantis

Member Since 22 Dec 2016
Offline Last Active Mar 30 2017 06:55 AM
-----

Posts I've Made

In Topic: Sacrifice bug !

23 March 2017 - 07:34 PM

try to look inside of skill_db.txt


In Topic: Skill.c please Help Strip

24 February 2017 - 08:22 AM

E

 

please help me i dont know what should i do. when i do full strip into my character and i try to use Full Chemical protection.. full chemical protection wont work.. all i know if someone uses full strip you can counter it by using FCP? what should i do? have yo u guys encounter this problem??

full chemical protection first your character and it can't be full strip. read the description of full chemical protection skill.

im saying is if they uses full strip to me. i can reset it by using FCP. vice versa


because the last server i created. when they uses full strip you can use FCP to cancel Strip


In Topic: Skill.c please Help Strip

24 February 2017 - 01:46 AM

The skill protects from divests, it doesn't remove them.

sir you know how to fixed this?

            // By pass FCP when using single strip skills by 15%(requires Glistening Coat).
            if ( sd && tsc && sd->sc.data[SC_SOULLINK] && sd->sc.data[SC_SOULLINK]->val2 == SL_ROGUE && rand()%100 < 100
                         &&
                        ( skill_id == RG_STRIPWEAPON && tsc->data[SC_PROTECTWEAPON] ||
                        skill_id == RG_STRIPSHIELD && tsc->data[SC_PROTECTSHIELD] ||
                        skill_id == RG_STRIPARMOR && tsc->data[SC_PROTECTARMOR] ||
                        skill_id == RG_STRIPHELM && tsc->data[SC_PROTECTHELM] ) ) {
                        int item_id = 7139; // Glistening Coat
                        int ii;
                        ARR_FIND( 0, MAX_INVENTORY, ii, sd->status.inventory[ii].nameid == item_id );
                        if ( ii < MAX_INVENTORY ) {
                            pc->delitem( sd, ii, 1, 0, 0, LOG_TYPE_CONSUME);
                            switch ( skill_id ) {
                                case RG_STRIPWEAPON:
                                    status_change_end( bl, SC_PROTECTWEAPON, INVALID_TIMER );
                                    sc_start( NULL, bl, SC_NOEQUIPWEAPON, 100, skill_lv, d );
                                    break;
                                case RG_STRIPSHIELD:
                                    status_change_end( bl, SC_PROTECTSHIELD, INVALID_TIMER );
                                    sc_start( NULL, bl, SC_NOEQUIPSHIELD, 100, skill_lv, d );
                                    break;
                                case RG_STRIPARMOR:
                                    status_change_end( bl, SC_PROTECTARMOR, INVALID_TIMER );
                                    sc_start( NULL, bl, SC_NOEQUIPARMOR, 100, skill_lv, d );
                                    break;
                                case RG_STRIPHELM:
                                    status_change_end( bl, SC_PROTECTHELM, INVALID_TIMER );
                                    sc_start( NULL, bl, SC_NOEQUIPHELM, 100, skill_lv, d );
                                    break;
                            }
                            clif->skill_nodamage(src,bl,skill_id,skill_lv,1);
                            break;
                        }
                    }
 
            //Attempts to strip at rate i and duration d
            if( (rate = skill->strip_equip(bl, location, rate, skill_lv, d)) || (skill_id != ST_FULLSTRIP && skill_id != GC_WEAPONCRUSH ) )
                clif->skill_nodamage(src,bl,skill_id,skill_lv,rate);
 
            //Nothing stripped.
            if( sd && !rate )
                clif->sskill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0);
            break;
        }
        // Full Chemical Protection
        case CR_FULLPROTECTION: {
            bool iused=true;
            int i;
            if(dstsd && dstsd->inventory_data[dstsd->equip_index[EQI_HAND_R]]) {
                iused=true;
                clif->skill_nodamage(src,bl,skill_id,skill_lv,sc_start(src,bl,SC_PROTECTWEAPON,100,skill_lv,skill->get_time(skill_id,skill_lv)));
            } if(dstsd && (i=dstsd->equip_index[EQI_HAND_L])>=0 && dstsd->inventory_data[i] && 
                    dstsd->inventory_data[i]->type==IT_ARMOR) {
                iused=true;
                clif->skill_nodamage(src,bl,skill_id,skill_lv,sc_start(src,bl,SC_PROTECTSHIELD,100,skill_lv,skill->get_time(skill_id,skill_lv)));
            } if(dstsd && dstsd->inventory_data[dstsd->equip_index[EQI_ARMOR]]) {
                iused=true;
                clif->skill_nodamage(src,bl,skill_id,skill_lv,sc_start(src,bl,SC_PROTECTARMOR,100,skill_lv,skill->get_time(skill_id,skill_lv)));
            } if(dstsd && dstsd->inventory_data[dstsd->equip_index[EQI_HEAD_TOP]]) {
                iused=true;
                clif->skill_nodamage(src,bl,skill_id,skill_lv,sc_start(src,bl,SC_PROTECTHELM,100,skill_lv,skill->get_time(skill_id,skill_lv)));
            } if(iused)
                clif->skill_nodamage(src,bl,skill_id,skill_lv,1);
            else {
                clif->sskill_fail(sd,skill_id,USESKILL_FAIL_LEVEL,0);
                return 1;
            }
        }
        break;

In Topic: item_db help!

23 February 2017 - 10:42 AM

 
    Name: "Variant Shoes"
    Type: 5
    Buy: 20
    Weight: 500
    Def: 3
    Job: {                 <---------------------------------
        All: true
        Novice: false
    }
    Upper: 2
    Loc: 64
    EquipLv: 85
    Trade: {
        nodrop: true
        notrade: true
        noselltonpc: true
        nocart: true
        nogstorage: true
        nomail: true
        noauction: true
    }
    Script: <"
        bonus bMaxHPrate,20-getrefine();
        bonus bMaxSPrate,20-getrefine();
        bonus bDef,getrefine()/2;
    ">

like this it have a job

In Topic: Extended Vending System UPDATED rev14395! by Lilith

20 February 2017 - 04:17 PM

this topic still alive? may i ask a few question? begginer here. how to use turtoise.git?


i dont even know how to start. how to diff sry for being noob