Sallycantdance Posted September 7, 2021 Posted September 7, 2021 (edited) hello i want to disable hourly points in characters who are in autotrade mode can anyone had an idea to do it thanks in advance heres the Script: Quote - script hourly_point_main -1,{ OnInit: .npc_name$ = strnpcinfo(3); bindatcmd "check",.npc_name$+"::OnAtcommand"; end; OnAtcommand: dispbottom "Accumulated "+#daily_minute_count; end; OnUpdate: #daily_minute_count++; deltimer .npc_name$+"::OnUpdate"; switch ( #daily_minute_count ) { default: break; case 60: // 60 minutes #CASHPOINT += 1; getitem 677,1; break; case 120: // 120 minutes #CASHPOINT += 1; getitem 677,1; break; case 180: // 180 minutes #CASHPOINT += 1; getitem 677,1; break; case 240: // 240 minutes #CASHPOINT += 1; getitem 677,1; break; case 300: // 300 minutes #CASHPOINT += 1; getitem 677,1; break; case 360: // 360 minutes #CASHPOINT += 1; getitem 677,1; break; case 420: // 420 minutes #CASHPOINT += 1; getitem 677,1; break; case 480: // 480 minutes #CASHPOINT += 1; getitem 677,1; #daily_minute_count = 0; // reset. break; } OnPCLoginEvent: addtimer ( 60 * 1000 ), .npc_name$+"::OnUpdate"; end; } Edited September 18, 2021 by chadness Quote
0 Start_ Posted September 7, 2021 Posted September 7, 2021 use checkvending() \rathena\doc\script_commands.txt Lines 3909 Quote
0 Sallycantdance Posted September 7, 2021 Author Posted September 7, 2021 Just now, Start_ said: use checkvending() can you elaborate more or do an example Quote
0 BeWan Posted September 7, 2021 Posted September 7, 2021 while(checkvending() >= 1) { if( .@mes$ == "" ) { dispbottom set( .@mes$, "The hourly points event stopped because you were vending!" ); set @hourly_points_timer, 0; } sleep2 .delay; } On 9/8/2021 at 8:23 PM, chadness said: no error but its not working still getting hourly points while in autotrade mode we already gave you an idea. you can use search engine to solve your problem. Quote
0 Sallycantdance Posted September 8, 2021 Author Posted September 8, 2021 On 9/7/2021 at 9:55 PM, BeWan said: while(checkvending() >= 1) { if( .@mes$ == "" ) { dispbottom set( .@mes$, "The hourly points event stopped because you were vending!" ); set @hourly_points_timer, 0; } sleep2 .delay; } hello thanks but where in the script exactly can i put this no error but its not working still getting hourly points while in autotrade mode On 9/8/2021 at 9:22 PM, BeWan said: we already gave you an idea. you can use search engine to solve your problem. okay sir thanks anyway thanks master your the best! Quote
0 Emistry Posted September 16, 2021 Posted September 16, 2021 - script hourly_point_main -1,{ OnInit: .npc_name$ = strnpcinfo(3); bindatcmd "check",.npc_name$+"::OnAtcommand"; end; OnAtcommand: dispbottom "Accumulated "+#daily_minute_count; end; OnUpdate: if (checkvending()) { dispbottom "Hourly point stopped due to vending."; end; } #daily_minute_count++; deltimer .npc_name$+"::OnUpdate"; switch ( #daily_minute_count ) { default: break; case 60: // 60 minutes #CASHPOINT += 1; getitem 677,1; break; case 120: // 120 minutes #CASHPOINT += 1; getitem 677,1; break; case 180: // 180 minutes #CASHPOINT += 1; getitem 677,1; break; case 240: // 240 minutes #CASHPOINT += 1; getitem 677,1; break; case 300: // 300 minutes #CASHPOINT += 1; getitem 677,1; break; case 360: // 360 minutes #CASHPOINT += 1; getitem 677,1; break; case 420: // 420 minutes #CASHPOINT += 1; getitem 677,1; break; case 480: // 480 minutes #CASHPOINT += 1; getitem 677,1; #daily_minute_count = 0; // reset. break; } OnPCLoginEvent: addtimer ( 60 * 1000 ), .npc_name$+"::OnUpdate"; end; } 1 Quote
Question
Sallycantdance
hello i want to disable hourly points in characters who are in autotrade mode can anyone had an idea to do it thanks in advance
heres the Script:
5 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.