Jump to content

Aerie

Members
  • Posts

    383
  • Joined

  • Last visited

  • Days Won

    1

Community Answers

  1. Aerie's post in Christmas Maps ! was marked as the answer   
    This is the most complete pack for xmas maps : http://code.google.com/p/aerie-pinkpanther/downloads/detail?name=xmas.7z&can=2&q=
    This one is from jRO : http://code.google.com/p/aerie-pinkpanther/downloads/detail?name=Xmas2011-jRO.rar&can=2&q=
  2. Aerie's post in NPC that summons mobster "Barricade" was marked as the answer   
    In fact barricade would never block the character. You have to use another command for make some tiles unwalkable :

    - script EP7_abysses -1,{ OnInit: donpcevent "EP7_abysses::OnSpawn"; end; OnSpawn: setcell "ars_fild58",94,103,101,103,cell_walkable,0; //non walkable //Salle 1 monster "ars_fild58",94,103,""+getmonsterinfo(1905,0)+"",1905,1,"EP7_abysses::OnBossDead"; monster "ars_fild58",95,103,""+getmonsterinfo(1905,0)+"",1905,1,"EP7_abysses::OnBossDead"; monster "ars_fild58",96,103,""+getmonsterinfo(1905,0)+"",1905,1,"EP7_abysses::OnBossDead"; monster "ars_fild58",97,103,""+getmonsterinfo(1905,0)+"",1905,1,"EP7_abysses::OnBossDead"; monster "ars_fild58",98,103,""+getmonsterinfo(1905,0)+"",1905,1,"EP7_abysses::OnBossDead"; monster "ars_fild58",99,103,""+getmonsterinfo(1905,0)+"",1905,1,"EP7_abysses::OnBossDead"; monster "ars_fild58",100,103,""+getmonsterinfo(1905,0)+"",1905,1,"EP7_abysses::OnBossDead"; monster "ars_fild58",101,103,""+getmonsterinfo(1905,0)+"",1905,1,"EP7_abysses::OnBossDead"; set $@monster_ep7abyss1,8; //need to destroy all barricades for enter OnBossDead: set $@monster_ep7abyss1, $@monster_ep7abyss1-1; if($@monster_ep7abyss1==0) { mapannounce "ars_fild58","Barricades gone !",0,0x6CC6666;} setcell "ars_fild58",94,103,101,103,cell_walkable,1; //walkable sleep2 120000; monster "ars_fild58",167,177,""+getmonsterinfo(3927,0)+"",3927,1,"EP7_abysses::OnBossDead2"; } end; }
  3. Aerie's post in NPC than changes what it sells was marked as the answer   
    You can make something like this :
    Different kind of products (different shop list) :

    - shop EP7_shop#1 660,12212:100,601:-1,602:-1,525:-1,1065:-1; - shop EP7_shop#2 660,12212:100,601:-1,602:-1,525:-1,1065:-1,645:-1,656:-1,501:-1,502:-1,503:-1,504:-1; - shop EP7_shop#3 660,12212:100,601:-1,602:-1,525:-1,1065:-1,645:-1,656:-1,501:-1,502:-1,503:-1,504:-1,610:-1,716:-1,717:-1,713:-1,505:-1,506:-1; - shop EP7_shop#4 660,12212:100,601:-1,602:-1,525:-1,1065:-1,645:-1,656:-1,501:-1,502:-1,503:-1,504:-1,610:-1,716:-1,717:-1,713:-1,505:-1,506:-1,715:-1,12149:20000,12150:20000,12151:20000,1766:-1,1763:-1,1760:-1,1757:-1,1762:-1; - shop EP7_shop#5 660,12212:100,601:-1,602:-1,525:-1,1065:-1,645:-1,656:-1,501:-1,502:-1,503:-1,504:-1,610:-1,716:-1,717:-1,713:-1,505:-1,506:-1,715:-1,12149:20000,12150:20000,12151:20000,1766:-1,1763:-1,1760:-1,1757:-1,1762:-1,533:-1,952:250,1059:1000,522:-1;
    And a NPC like this after add some conditions to your script :

    ars_fild26,93,65,1 script Vendeuse Yuna#ep7 53,{ mes "[" + @name$ + "]"; mes "TEXT"; close2; if ($hour >= 14) { callshop "EP7_shop#5",0; } end; }
  4. Aerie's post in req. points was marked as the answer   
    This is a simple script for count kills in a woe castle and only during woe. After its up to you to create a NPC that gives prize depending of number of points.

    - script Woe_points -1,{ OnInit: setarray$mapcastl$[0],"aldeg_cas01","aldeg_cas02","aldeg_cas03","aldeg_cas04","aldeg_cas05","gefg_cas01","gefg_cas02","gefg_cas03","gefg_cas04","gefg_cas05","payg_cas01","payg_cas02","payg_cas03","payg_cas04","payg_cas05","prtg_cas01","prtg_cas02","prtg_cas03","prtg_cas04","prtg_cas05"; end; OnPCKillEvent: getmapxy @map$,@x,@y,0; for( set .@i, 0; .@i < getarraysize($mapcastl$); set .@i, .@i +1 ) if (agitcheck() && @map$ == $mapcastl$[.@i]) { set woe_points,woe_points+1; } end; }
  5. Aerie's post in Request for a simple PVP Announcer.. was marked as the answer   
    Here a reduce version of script that I'm using, it's only for SQL all stats can be saved.
    SQL lines to add in your data :

    //ALTER TABLE `char` ADD COLUMN `pvp_Kill` INTEGER UNSIGNED NOT NULL DEFAULT '0' AFTER `rename`; //ALTER TABLE `char` ADD COLUMN `pvp_Death` INTEGER UNSIGNED NOT NULL DEFAULT '0' AFTER `rename`;

    - script C_login -1,{ OnInit: //For set map used setarray $pvpmap$[0],"pvp_map1","pvp_map2","pvp_map3"; OnPCDieEvent: getmapxy @map$,@x,@y,0; //For PvP maps for( set .@i, 0; .@i < getarraysize($pvpmap$); set .@i, .@i +1 ) if (@map$ == $pvpmap$[.@i]) { set .@p,getcharid(0); //Char ID set .@q,strcharinfo(0); //Char ID //For killstreak, you can add more lines - Change announce. set @killstreak,0; set @deathstreak,@deathstreak+1; if (@deathstreak == 5) {mapannounce ""+@map$+"",""+.@q+" : ["+@deathstreak+"] Kills without be killed !",bc_map;} if (@deathstreak == 10) {mapannounce ""+@map$+"",""+.@q+" : ["+@deathstreak+"] Kills without be killed !",bc_map;} if (@deathstreak == 15) {mapannounce ""+@map$+"",""+.@q+" : ["+@deathstreak+"] Kills without be killed !",bc_map;} if (@deathstreak == 20) {mapannounce ""+@map$+"",""+.@q+" : ["+@deathstreak+"] Kills without be killed !",bc_map;} //Par Joueur query_sql("SELECT `pvp_Death` FROM `char` WHERE `char_id` = '"+.@p+"'",.@countL); //Check name setarray .@countL[0],.@countL[0]+1; query_sql "UPDATE `char` SET `pvp_Death` = '"+.@countL[0]+"' WHERE `char_id` ='"+.@p+"'"; } //============================= Bottom if(killerrid==0) {dispbottom "You just killed yourself.";end;} set @killer$, rid2name(killerrid); dispbottom "You have been killed by "+@killer$+"!"; end; //================================================================================= OnPCKillEvent: getmapxy @map$,@x,@y,0; for( set .@i, 0; .@i < getarraysize($pvpmap$); set .@i, .@i +1 ) if (@map$ == $pvpmap$[.@i]) { set .@x,getcharid(0); //Char ID set .@y,strcharinfo(0); set @deathstreak,0; set @killstreak,@killstreak+1; if (@killstreak == 5) {mapannounce ""+@map$+"",""+.@y+" : ["+@killstreak+"] died without kill !",bc_map;} if (@killstreak == 10) {mapannounce ""+@map$+"",""+.@y+" : ["+@killstreak+"] died without kill !",bc_map;} if (@killstreak == 15) {mapannounce ""+@map$+"",""+.@y+" : ["+@killstreak+"] died without kill !",bc_map;} if (@killstreak == 20) {mapannounce ""+@map$+"",""+.@y+" : ["+@killstreak+"] died without kill !",bc_map;} //Par Joueur query_sql("SELECT `pvp_Kill` FROM `char` WHERE `char_id` = '"+.@x+"'",.@countX); //Verif le nom setarray .@countX[0],.@countX[0]+1; query_sql "UPDATE `char` SET `pvp_Kill` = '"+.@countX[0]+"' WHERE `char_id` ='"+.@x+"'"; } //============================= Bottom set @killed$, rid2name(killedrid); if(strcharinfo(0)==@killed$) {end;} dispbottom "You have kill "+@killed$+"!"; end; }
  6. Aerie's post in problem on custom map was marked as the answer   
    That's a real problem when you create a custom map ... (Following method can occure some model disparition ...)
  7. Aerie's post in Item equipable in specific map. was marked as the answer   
    I've used a similar system in Arsinoé / Schallmar. So here the code :
    Item_db (OnEquip : call function)

    29170,Helm of the Champion,Helm of the Champion,5,5000,,10,,5,,0,0xFFFFFFFF,7,2,256,,0,1,510,{bonus2 bAddRace,7,50; bonus3 bAutoSpell,68,10,5; bonus bVit,10;},{callfunc "ars_done";},{}

    function script ars_done { getmapxy(.@map$,.@x,.@y,0); for(set .@i, 0; .@i < getarraysize($@allowedmaps2$); set .@i, .@i + 1) { if ($@allowedmaps1$[.@i] == .@map$ || $@allowedmaps2$[.@i] == .@map$ || $@allowedmaps3$[.@i] == .@map$) { set .@var, .@var+1;} } if (.@var == 1) { end;} //If Map correct - Check objects for(set .@o, 1; .@o < 11; set .@o, .@o + 1) { for(set .@j, 0; .@j < getarraysize($@itemsdenied); set .@j, .@j + 1) { if(getequipid(.@o) == $@itemsdenied[.@j]) { if(EP7_LANGUE == 0) { dispbottom "Le '"+getitemname(getequipid(.@o))+"' n'est pas autorisé sur cette map.";} if(EP7_LANGUE == 1) { dispbottom "The '"+getitemname(getequipid(.@o))+"' isn't authorized in this map.";} unequip .@o; } } } end; }

    - script EP7_ConfigurationSchall -1,{ OnInit: //Allow items / maps setarray $@allowedmaps1$[0], "tantale_ile","ars_phare","ars_fild01","ars_fild02","ars_fild03","ars_fild04","ars_fild05","ars_fild06","ars_fild07","ars_fild08","ars_fild09","ars_fild10","ars_fild11","ars_fild12","ars_fild13","ars_fild14","ars_fild15","ars_fild16","ars_fild17","ars_fild18","ars_fild19","ars_fild20","ars_fild21","ars_fild22","ars_fild23","ars_fild24","ars_fild25","ars_fild26","ars_fild27","ars_fild28","ars_fild29","ars_fild30","ars_fild31","ars_fild32","ars_fild33","ars_fild34","ars_fild35","ars_fild36","ars_fild37","ars_fild38","ars_fild39","ars_fild40","ars_fild41","ars_fild42","ars_fild43","ars_fild44","ars_fild45","ars_fild46","ars_fild47","ars_fild48","ars_fild49","ars_fild50","ars_fild51","ars_fild52","ars_fild53","ars_fild54","ars_fild55","ars_fild56","ars_fild57","ars_fild58","ars_fild59","ars_fild60","ars_fild61","ars_fild62","ars_fild63","ars_fild64","ars_fild65","ars_fild66","ars_fild67","ars_fild68","ars_fild69","ars_fild70","ars_fild71","ars_fild72","ars_fild73","ars_fild74","ars_fild75","ars_fild76"; setarray $@allowedmaps2$[0], "ars_dun01","ars_dun02","ars_dun03","ars_dun04","ars_dun05","ars_dun06","ars_dun07","ars_dun08","ars_dun09","ars_dun10","ars_dun11","ars_dun12","ars_dun13","ars_dun14","ars_dun15","ars_dun16","ars_dun17","ars_dun18","ars_dun19","ars_dun20","ars_dun21","ars_dun22","ars_dun23","ars_dun24","ars_dun25","ars_dun26","ars_dun27","ars_dun28","ars_dun29","ars_dun30","ars_dun31","ars_dun32","ars_dun33","ars_dun34","ars_dun35","ars_dun36","ars_dun37","ars_dun38","ars_dun39","ars_dun40","ars_dun41","ars_dun42","ars_dun43","ars_dun44","ars_dun45","ars_dun46","ars_dun47","ars_dun48","ars_dun49","ars_dun50","ars_dun51","ars_dun52","ars_dun53","ars_dun54","ars_dun55","ars_dun56","ars_dun57","ars_dun58","ars_dun59","ars_dun60","ars_dun61","ars_dun62","ars_dun63","ars_dun64","ars_dun65","ars_dun66","ars_dun67","ars_dun68","ars_dun69","ars_dun70","ars_dun71","ars_dun72","ars_dun73","ars_dun74","ars_dun75","ars_dun76","ars_dun77","ars_dun78","ars_dun79","ars_dun80","ars_dun81","ars_dun82","ars_dun83","ars_dun84","ars_dun85","ars_dun86","ars_dun87","ars_dun88","ars_dun89","ars_dun90","ars_dun91","ars_dun92","ars_dun93","ars_dun94","ars_dun95","ars_dun96"; setarray $@allowedmaps3$[0], "ars_in01","ars_in02","ars_in03","ars_in04","ars_in05","ars_in06","ars_in07","ars_in08","ars_in09","ars_in10","ars_in11","ars_in12","ars_in13","ars_in14","ars_in15","ars_in16","ars_in17"; setarray $@itemsdenied[0],29170,29171,29172,29173,29174,29175,29176,29177,29178,29179; }
    So you can add maps who allowed the use of items and which ones.
    You have also the db/item_noequip.txt to edit :

    //Zone 8 - Arsinoe / Schallmar items limitation 1101,512 29170,512 29171,512 29172,512 29173,512 29174,512 29175,512 29176,512 29177,512 29178,512 29179,512
    Here mapflag restricted 8 with all maps : http://aerie-pinkpanther.googlecode.com/svn/Schallmar/Server/npc/Schallmar/Mapflags.txt

    dic_dun03 mapflag restricted 8
    The mapflag will check at the login which items the character worn and disable them if equipped.
×
×
  • Create New...