Jump to content

Mabuhay

Members
  • Posts

    446
  • Joined

  • Last visited

  • Days Won

    34

Community Answers

  1. Mabuhay's post in Single Strip Soul Link was marked as the answer   
    Lacking break on strip armor code.
    int d = 0; // By pass FCP when using single strip skills by 15%(requires Glistening Coat). if ( sd && tsc && sd->sc.data[SC_SPIRIT] && sd->sc.data[SC_SPIRIT]->val2 == SL_ROGUE && rand()%100 < 75 && ( skill_id == RG_STRIPWEAPON && tsc->data[SC_CP_WEAPON] || skill_id == RG_STRIPSHIELD && tsc->data[SC_CP_SHIELD] || skill_id == RG_STRIPARMOR && tsc->data[SC_CP_ARMOR] || skill_id == RG_STRIPHELM && tsc->data[SC_CP_HELM] ) ) { int item_id = 7139; // Glistening Coat int ii; ARR_FIND( 0, MAX_INVENTORY, ii, sd->inventory.u.items_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_CP_WEAPON, INVALID_TIMER ); sc_start(src,bl,SC_STRIPWEAPON,100,skill_lv,skill_get_time(skill_id,skill_lv)); break; case RG_STRIPSHIELD: status_change_end( bl, SC_CP_SHIELD, INVALID_TIMER ); sc_start(src,bl,SC_STRIPSHIELD,100,skill_lv,skill_get_time(skill_id,skill_lv)); break; case RG_STRIPARMOR: status_change_end( bl, SC_CP_ARMOR, INVALID_TIMER ); sc_start(src,bl,SC_STRIPARMOR,100,skill_lv,skill_get_time(skill_id,skill_lv)); break; // <-- this part was missing case RG_STRIPHELM: status_change_end( bl, SC_CP_HELM, INVALID_TIMER ); sc_start(src,bl,SC_STRIPHELM,100,skill_lv,skill_get_time(skill_id,skill_lv)); break; } clif_skill_nodamage( src, bl, skill_id, skill_lv, i ); break; } }  
  2. Mabuhay's post in use atcommand to nick name have "space" was marked as the answer   
    I dunno why you used npc timers and stuff for this, from what i understood. This should update the cashpoint of a player when loggin in.
    This is why you dont use `atcommand` script because it is very inefficient. (personally)
    - script DonationUpdate -1,{ OnPCLoginEvent: .@aid = getcharid(3); query_sql("SELECT `id`, `status`, `donate` FROM `test_donation` WHERE `account_id` = "+.@aid, .@id, .@status, .@donation); if ( !.@status ) { #CASHPOINTS += .@donation; query_sql("UPDATE `test_donation` SET `status`='1' WHERE `id`='"+.@id+"' AND `account_id`="+.@aid); } end; } Although that is untested, but it should work as how i understood your script. Make sure you use this on a test server first to avoid messing up your data.
    I believe this should greatly reduce memory usage on your server.
    Edit : Changed #CASHPOINT to #CASHPOINTS
    PS: I suggest just let players relog instead of putting timers to avoid any unnecessary memory consumption.
  3. Mabuhay's post in Item Trader was marked as the answer   
    item_trader.txt
    NOTE : Fixed some issues on 2nd item options being null
    item_trader.txt
    NOTE : Re-Fixed some issues on 2nd item options being null
    Enjoy.
     
     
    I will be posting this soon. I really hope mods are active. I still have 2 pending free scripts to be approved.
  4. Mabuhay's post in 7v7 or Guild vs Guild Automated Event Script was marked as the answer   
    I have uploaded the script. Just have to wait for moderators to approve.
  5. Mabuhay's post in Help me please was marked as the answer   
    Check :
    Add(3,30168,1,1000000,200,32054,10,12016,100,5033,1,5062,1,1,4001,30,7019,300,7295,30,7620,10,7619,10); change to Add(3,30168,1,1000000,200,32054,10,12016,100,5033,1,5062,1,4001,30,7019,300,7295,30,7620,10,7619,10); and
    Add(3,32015,1,1000000,200,32054,10,12016,100,5033,1,5062,1,30,7156,300,7290,30,7620,10,7619,10); Add(3,30069,1,1000000,200,32054,10,12016,100,5033,1,5062,1,30,7155,300,7294,30,7620,10,7619,10); change to Add(3,32015,1,1000000,200,32054,10,12016,100,5033,1,5062,1,7156,300,7290,30,7620,10,7619,10); Add(3,30069,1,1000000,200,32054,10,12016,100,5033,1,5062,1,7155,300,7294,30,7620,10,7619,10);  
  6. Mabuhay's post in How to make mob only gives item for party in the same screen? [SOLVED] was marked as the answer   
    OnNPCKillEvent: if ( killedrid == 1002 ) { getmapxy (.@map$, .@x, .@y, BL_PC); getpartymember getcharid(1), 1; getpartymember getcharid(1), 2; for ( .@i = 0; .@i < $@partymembercount; ++.@i ) if ( isloggedin( $@partymemberaid[.@i], $@partymembercid[.@i] ) ) { attachrid ( $@partymemberaid[.@i]); getmapxy ( @map$, @x, @y, BL_PC ); if ( distance(.@x, .@y, @x, @y) < 15 && @map$ == .@map$ ) { // reduced the distance to 15 cells .@partymemberaid[.@c] = $@partymemberaid[.@i]; .@c++; } } sleep 1; getitem 607, 1, .@partymemberaid[rand(.@c)]; } end; @Rizz still untested
  7. Mabuhay's post in Paladin Shield Skill Failed was marked as the answer   
    resolved. use the item_db found in re folder.
     
    for some reason, they changed the weapon type as 5 and armor as 4 in item_db structure
  8. Mabuhay's post in Emperium on Woe castle was marked as the answer   
    Try this:

    1288,EMPELIUM,Emperium,Emperium,90,68430,0,0,0,1,60,71,40,50,1,17,80,50,26,20,10,12,0,8,26,0x120,300,1288,288,384,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
×
×
  • Create New...