Jump to content

johnlol

Members
  • Posts

    6
  • Joined

About johnlol

  • Birthday 04/23/1988

Profile Information

  • Gender
    Male
  • Location
    Rio de Janeiro

Recent Profile Visitors

1,059 profile views

johnlol's Achievements

Poring

Poring (1/15)

0

Reputation

  1. Aee.. Testado e aprovado.. xD // .----------------------------------------------------------. // . SoulBlaker Scripts Apresenta: . // . ___________________ . // . / _____/\______ \ . // . \_____ \ | | _/ . // . / \ | | \ . // . /_______ / |______ / . // . \/ \/ . // . [ eAthena Advanced Scripts ] . // . v1.0 . // .----------------------------------------------------------. // ; http://www.eathena.ws/board/SoulBlaker-m271867.html ; // .----------------------------------------------------------. // . Script: . // . Removedora de Cartas . // .----------------------------------------------------------. // . Por: SoulBlaker Compativel: eAthena SVN versao: 1.1 . // .----------------------------------------------------------. // . Descriçao: . // . Remove Cartas do Personagem . // .----------------------------------------------------------. // . Changelog da Versao: . // . - 1.0 Iniciado o NPC. [SoulBlaker] . // *----------------------------------------------------------* sec_in02.gat,146,150,2 script Removedora de Cartas#c_1 750,{ set [email protected], 50000; set [email protected], 10000; mes "^FF0000[Removedora de Cartas]^000000"; mes "Olá " + strcharinfo(0) + ","; mes "tenho o poder de retirar cartas de equipamentos."; mes "Esta idéia te agrada?"; next; if( select("- Sim, bastante.","- Não, nenhum pouco.") == 2 ) { mes "^FF0000[Removedora de Cartas]^000000"; mes "Muito bem, volte quando desejar remover suas cartas."; close; } mes "^FF0000[Removedora de Cartas]^000000"; mes "Muito bem, eu preciso de " + [email protected] + " Zenys, mais " + [email protected] + " Zenys por carta removida."; mes "Deseja remover uma carta de algum equipamento?"; next; for( set [email protected],1; [email protected] <= 10; set [email protected],[email protected]+1 ) { if( getequipisequiped([email protected]) ) set [email protected]$, [email protected]$+"- "+getequipname([email protected]); set [email protected]$, [email protected]$+":"; } set [email protected]$, [email protected]$+":- Cancelar"; set [email protected], Select([email protected]$); if( [email protected] > 10 ) { mes "^FF0000[Removedora de Cartas]^000000"; mes "Muito bem, volte quando desejar remover suas cartas."; close; } if( getequipcardcnt([email protected]) == 0 ) { mes "^FF0000[Removedora de Cartas]^000000"; mes "Sinto muito, mais você não tem cartas para remover!"; close; } set [email protected], getequipcardcnt([email protected]); set [email protected], ([email protected] * [email protected]) + [email protected]; mes "^FF0000[Removedora de Cartas]^000000"; mes "Muito bem, são " + [email protected] + " Zenys,"; mes "mais o custo de " + ([email protected] * [email protected] ) + " por carta equipada."; mes "Totalizamos isto em " + [email protected] + " Zenys para remover suas cartas."; mes "Deseja remover suas cartas?"; next; if( select("- Sim.","- Não.") == 2 ) { mes "^FF0000[Removedora de Cartas]^000000"; mes "Humm... para mim é um preço bem justo!"; close; } if( Zeny < [email protected] ) { mes "^FF0000[Removedora de Cartas]^000000"; mes "Me desculpe, mais você não tem " + [email protected] + " Zenys."; close; } set Zeny, Zeny - [email protected]; successremovecards [email protected]; mes "^FF0000[Removedora de Cartas]^000000"; mes "Muito bem, suas cartas foi removida sem nenhum problema."; close; }
  2. Modificado, download aqui. E eu tenho o Original. V1.1
  3. Sem Erro.. xD //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% //%% _____ _____ _____ _____ _____ _ _____ _ _ %% //%% | _ \ / _ \ | _ \ | ____| | _ \ | | / ___| | | / / %% //%% | |_| | | | | | | | | | | |__ | |_| | | | | | | |/ / %% //%% | _ / | | | | | | | | | __| | _ / | | | | | |\ \ %% //%% | | \ \ | |_| | | |_| | | |___ | | \ \ | | | |___ | | \ \ %% //%% |_| \_\ \_____/ |_____/ |_____| |_| \_\ |_| \_____| |_| \_\ %% //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% //%%==================================================================================%% //%% | Desenvolvido Por [ADM] Roderick | Cronus | Por Favor, Não Retire Os Créditos | %% //%%==================================================================================%% //%% | TABELA SQL (NÃO ESQUECER DE IMPORTAR PARA O BD) %% //%%==================================================================================%% //%% DROP TABLE IF EXISTS `invasao`; //%% CREATE TABLE `invasao` ( //%% `id` int(11) unsigned NOT NULL auto_increment, //%% `mobid` int(11) unsigned NOT NULL default '0', //%% PRIMARY KEY (`id`) //%% )ENGINE=MyISAM; //%%==================================================================================%% - script INVASAOMVP -1,{ OnInit: //%%==================================================================================%% //%% Colocar aqui a ID dos MVPS "normais" ou seja os MVP's que vão ser sumonado em //%% maior quantidade setarray $MVP[1],1086,1087,1115,1147,1150,1159,1190,1251,1252,1389,1583,1688,1885,1980,2068,2094,2131,2194,1038,1039,1046,1059,1112,1157,1272,1312,1373,1418,1492,1511,1623,1630,1785,1957,2022,2087,2187,2188,2253,2317,2321,2441,2442,2996; //%% Colocar aqui a ID dos MVPS "melhores" ou seja os MVP's que vão ser sumonado em //%% menor quantidade setarray $TopMVP[1],1658,1685,1708,1719,1734,1768,1779,1917,1929,1956,2189,2190,2202,2251,2255,2319,2362,1646,1647,1648,1649,1650,1651,1751,1832,1871,1874,2165,2235,2236,2237,2238,2239,2240,2241,2249; //%% Aqui é a % de chance que os MVPs "normais", poderam ser sumonado 2 do mesmo!! //%% Pra cada monstro invocado, vai ser aplicado a taxa de porcetentagem para poder //%% dobrar e invocar 2 do mesmo, sendo assim só alguns vai ser dobrado conforme a %! //%% Colocar 100 para 100% e 0 para desabilitar essa função set $dobroMVP,30; //%% Aqui é a % de chance que os MVPs "melhores", poderam ser sumonado 2 do mesmo!! //%% Pra cada monstro invocado, vai ser aplicado a taxa de porcetentagem para poder //%% dobrar e invocar 2 do mesmo, sendo assim só alguns vai ser dobrado conforme a %! //%% Colocar 100 para 100% e 0 para desabilitar essa função set $dobroTOP,20; //%% Quantidade média de MVP "normais" que vai ser sumonado, média porquê esse número //%% poderá ser maior conforme a taxa de dobro (se estiver ativada) set $qtdeMVP,5; //%% Quantidade média de MVP "melhores" que vai ser sumonado, média porquê esse nº //%% poderá ser maior conforme a taxa de dobro (se estiver ligada)% set $qtdeTOP,1; //%% Chance do evento poder não acontecer, se quiser que o evento sempre aconteça //%% colocar o valor em 100 > 100%. O número equivale a % que evento VAI acontecer!! set $acontecer,40; //%% MAPA que vai acontecer a invasão (colocar igual o nome digitado no @warp) set $mapa$,"prt_fild08"; //%% Nome do MAPA que vai aparecer nas mensagens globais anunciando o EVENTO!! set $nomemapa$,"AO SUL DE PRONTERA"; //%% Quando estiver faltando 'x' MVP's pra serem mortos o npc começa mandar global //%% avisando quantos MVP's faltam para ser mortos; Colocar 0 (zero) pra desativar set $faltam,5; //%% end; //%% Configure aqui os horários para acontecer o evento, coloque os horários em //%% formato PM sem o separador de horas e minutos. Ex: "1945" para 19:45> 07:45 PM //%% Pode colocar quantos horários quizer, ou também, apenas um //OnClock<hour><minute>: //OnMinute<minute>: //OnHour<hour>: //On<weekday><hour><minute>: //OnDay<month><day>: OnMinute00: //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% query_sql ("delete from `invasao` where id>0"); set [email protected],rand(1,100); if ([email protected] > $acontecer){ end; } for (set [email protected],1; [email protected] <= $qtdeMVP; [email protected]++){ set [email protected],getarraysize($MVP)-1; set [email protected],rand(1,[email protected]); query_sql ("select mobid from invasao where mobid='"+$MVP[[email protected]]+"'",[email protected]); if ($MVP[[email protected]] == [email protected]){ while ($MVP[[email protected]] == [email protected]){ set [email protected],rand(1,[email protected]); }} set [email protected],rand(1,100); if([email protected]<=$dobroMVP)set [email protected],2; else{ set [email protected],1;} monster $mapa$,0,0,getmonsterinfo($MVP[[email protected]],0),$MVP[[email protected]],[email protected],strnpcinfo(0)+"::OnKILLMOB"; query_sql("insert into `invasao` (mobid) value ('"+$MVP[[email protected]]+"')"); } for (set [email protected],1; [email protected] <= $qtdeTOP; [email protected]++){ set [email protected],getarraysize($TopMVP)-1; set [email protected],rand(1,[email protected]); query_sql ("select mobid from invasao where mobid='"+$TopMVP[[email protected]]+"'",[email protected]); if ($TopMVP[[email protected]] == [email protected]){ while ($TopMVP[[email protected]] == [email protected]){ set [email protected],rand(1,[email protected]); }} set [email protected],rand(1,100); if([email protected]<=$dobroTOP)set [email protected],2; else{ set [email protected],1;} monster $mapa$,0,0,getmonsterinfo($TopMVP[[email protected]],0),$TopMVP[[email protected]],[email protected],strnpcinfo(0)+"::OnKILLMOB"; query_sql("insert into `invasao` (mobid) value ('"+$TopMVP[[email protected]]+"')"); } announce "[Invasão MvP] Corram todos, vários MvP's surgiram do nada!!! "+$nomemapa$+"",bc_yellow; sleep 5000; announce "[Invasão MvP] Corram porquê eles vão fugir em 30 minutos!!!",bc_yellow; //Não esqueça de alterar essa linha, caso você altere o tempo da Invasão! initnpctimer; set $mob,mobcount($mapa$,strnpcinfo(0)+"::OnKILLMOB"); end; OnTimer1800000: //Configure o tempo que a invasão durará aqui, coloque o tempo em segundos!! killmonster $mapa$,strnpcinfo(0)+"::OnKILLMOB"; cleanmap $mapa$; announce "[Invasão MvP] OS MvP's fugiram, a INVASÃO terminou!!!",bc_all,0xFF0000; stopnpctimer; end; OnKILLMOB: $mob--; if($mob==0){ sleep 3000; announce "[Invasão MvP] Todos os MvP's foram mortos, a INVASÃO terminou!!!",bc_all,0xFF0000; stopnpctimer; end; } if($mob==1){ sleep 3000; announce "[Invasão MvP] Falta apenas 1 MvP para a INVASÃO terminar!",bc_yellow; } if($mob<=$faltam && $mob>1){ sleep 3000; announce "[Invasão MvP] Ainda existe "+$mob+" MvP's em' "+$nomemapa$+"!!",bc_yellow; } end; }
  4. Vee se esse te servEe... tabela SQL no final.. //= --- //= MvP Rank Improved v1.0 //= --- //= This Rank will count every MvP you kill, //= to be more clear, will count every mob //= defined inside the array ".mobid[0]", //= so, if you add the poring ID will count in the rank //= you can modify and ad miniBoss because this array //= only have all MvPs, that's the idea, only MvPs... //= --- - script Rank MvP -1,{ OnInit: // Script Configuration setarray .mobid[0],1511,1647,1785,1630,1399,1039,1874,2068,1272,1719,1046,1389,1112,1115,1957,1418,1871,1252,1768,1086,1688,1646, 1373,1147,1059,1150,1956,2022,1087,1190,1038,1157,1159,1502,1623,1650,1583,1708,1312,1751,1685,1648,1917,1658; // MvP Ids set .a, 0; // Broadcast who killed the MvP and wich MvP and wick Map [0 Off - 1 On] set [email protected], 10; // Max. Top Rank (Hihgly recommended between 5~10, more maybe bug the server (limited variables) end; OnNPCKillEvent: // Script execution for (set [email protected], 0; [email protected] < getarraysize(.mobid); set [email protected], [email protected] + 1) if (killedrid == .mobid[[email protected]]) set [email protected], 1; // If a MvP if ([email protected]) end; if (.a) // If announce On announce "El usuario [" +strcharinfo(0) +"] ha matado un [" +getmonsterinfo(killedrid,0) +"] en el mapa [" +strcharinfo(3) +"]",bc_blue|bc_all; set MvP, MvP + 1; callfunc ("MvPRank",MvP,strcharinfo(0)); end; } // End Script //prontera,147,171,5 script MvP Rank 405,{ // NPC that will show the ranking mes "[^FF0000MvP ^0000FFRank ^00FF00Top ^FF0000" [email protected] +"^000000]"; for (set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] + 1) mes "Top ^FF0000" +([email protected] + 1) +"^000000 ^0000FF" +getd("$topmvp" [email protected] +"$") +"^000000 with ^FF0000" +getd("$topmvp" [email protected]) +"^000000 MvP killed."; close; } // End if function script MvPRank { set @mvptotal, getarg(0); set @nomb$, getarg(1); for (set [email protected], 0; [email protected] < [email protected]; set [email protected], [email protected] + 1) { if (@mvptotal >= getd("$topmvp" [email protected])) { if (strcharinfo(0) == getd("$topmvp" [email protected] +"$")) { setd "$topmvp" [email protected], @mvptotal; setd "$topmvp" [email protected] +"$", @nomb$; return; } else { if (getd("$topmvp" +([email protected] + 1) +"$") == "") { setd "$topmvp" [email protected], @mvptotal; setd "$topmvp" [email protected] +"$", @nomb$; return; } else { setd "$topmvp" +([email protected] + 1), getd("$topmvp" [email protected]); setd "$topmvp" +([email protected] + 1) +"$", getd("$topmvp$" [email protected]); setd "$topmvp" [email protected], @mvptotal; setd "$topmvp" [email protected] +"$", @nomb$; return; } // End if } // End if } // End if } // End loop return; } // End function //CREATE TABLE IF NOT EXISTS `E-MVPRank` ( //`char_id` int(11) unsigned NOT NULL default '0', //`name` varchar(30) NOT NULL DEFAULT '', //`Count` int(11) unsigned NOT NULL default '0', //PRIMARY KEY (`char_id`) //) ENGINE=MyISAM;
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.