viewing paste Rift System v1.1 | Athena

Posted on the
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117
//===== eAthena Script =======================================
//= Rift System
//===== By: ==================================================
//= Euphy
//===== Current Version: =====================================
//= 1.1
//===== Description: =========================================
//= "Rifts" in major towns provide warps, save, storage, and healing/buffs.
//= Warps are locked until activating the respective rift.
//= "Shards" are required for features, and are dropped by mobs.
//============================================================
 
/*
> item_db2.txt:
        3500,Shard,Shard,3,0,,0,,,,,,,,,,,,,{},{},{}
> idnum2itemdisplaynametable.txt:
        3500#Shard#
> idnum2itemresnametable.txt:
        3500#øµ»•¿«¡∂∞¢#
> idnum2itemdesctable.txt:
        3500#
        A shard from times of old that still gives off a faint, yet powerful light.
        ^ffffff_^000000
        Weight :^777777 0^000000
        #
*/
 
-       script  Rifts   -1,{
OnInit:
        setarray $@maps$[0],"alberta","aldebaran","amatsu","ayothaya","comodo","einbech","einbroch","geffen","gonryun","hugel","izlude","jawaii","lighthalzen","louyang","morocc","moscovia","niflheim","payon","prontera","rachel","umbala","veins","xmas","yuno";
        setarray $@mapxy[0],28,234,140,131,198,84,150,113,198,146,70,95,64,200,119,59,159,115,96,145,128,111,249,127,158,92,217,94,159,90,223,187,194,186,178,99,155,179,130,110,95,154,216,128,148,129,157,51;
        setarray $@maploc[0],2,3,2,1,1,4,4,3,2,3,2,2,4,1,1,1,1,2,2,5,1,5,3,4;
        end;
OnNPCKillEvent:
        if(rand(20)==10) getitem 3500,1;
        end;
}
 
-       script  Rift#0::rift    723,{
        if (RiftVar & atoi(strnpcinfo(2))) {
                switch(select(" ^777777~^000000  Warp:^777777[1]^000000 Save:^777777[1]^000000 Storage:^777777[3]^000000 Heal & Buff")) {
                        case 1:
                                set .@i,0;
                                while (.@i < getarraysize($@maps$)) {
                                        if (RiftVar & pow(2,.@i)) {
                                                setarray .@menu1$[getarraysize(.@menu1$)], $@maps$[.@i];
                                                setarray .@menu2[getarraysize(.@menu2)], $@mapxy[.@i*2], $@mapxy[.@i*2+1];
                                                setarray .@menu3[getarraysize(.@menu3)], $@maploc[.@i]; }
                                        if (strcharinfo(3) == $@maps$[.@i]) set .@j, $@maploc[.@i];
                                        set .@i, .@i+1; }
                                set .@menu$, "^777777[" + sqrt(pow(.@j-.@menu3[0],2)) + "]^000000 " + .@menu1$[0];
                                set .@i,1;
                                while (.@i < getarraysize(.@menu1$)) {
                                        set .@menu$, .@menu$ + ":^777777[" + sqrt(pow(.@j-.@menu3[.@i],2)) + "]^000000 " + .@menu1$[.@i];
                                        set .@i, .@i+1; }
                                set .@i, select(.@menu$) - 1;
                                if (countitem(3500) < sqrt(pow(.@j-.@menu3[.@i],2))) dispbottom "You do not have enough Shards to warp there.";
                                else {
                                        warp .@menu1$[.@i], .@menu2[.@i*2], .@menu2[.@i*2+1];
                                        delitem 3500, sqrt(pow(.@j-.@menu3[.@i],2)); }
                                close;
                        case 2:
                                if (countitem(3500)) {
                                        getmapxy(.@map$,.@x,.@y,0);
                                        savepoint .@map$,.@x,.@y;
                                        dispbottom "Your save point has been changed.";
                                        delitem 3500,1; }
                                else dispbottom "You do not have enough Shards to save here.";
                                close;
                        case 3:
                                if (countitem(3500)) {
                                        openstorage;
                                        delitem 3500,1; }
                                else dispbottom "You do not have enough Shards to access storage.";
                                close;
                        case 4:
                                if (countitem(3500) > 2) {
                                        skilleffect 28,readparam(6)-readparam(5); percentheal 100,100;
                                        sc_start SC_INCREASEAGI,600000,10; skilleffect 34,0;
                                        sc_start SC_BLESSING,600000,10; skilleffect 29,0;
                                        delitem 3500,3; }
                                else dispbottom "You do not have enough Shards for buffs.";
                                close;
                }
        } else {
                set RiftVar, RiftVar | atoi(strnpcinfo(2));
                specialeffect2 348;
                getitem 3500,5;
                dispbottom "The rift has been activated.";
                close;
        }
}
 
alberta,27,238,0        duplicate(rift) Rift#1  723
aldebaran,145,118,0     duplicate(rift) Rift#2  723
amatsu,201,88,0 duplicate(rift) Rift#4  723
ayothaya,144,117,0      duplicate(rift) Rift#8  723
comodo,194,158,0        duplicate(rift) Rift#16 723
einbech,81,101,0        duplicate(rift) Rift#32 723
einbroch,55,201,0       duplicate(rift) Rift#64 723
geffen,112,66,0 duplicate(rift) Rift#128        723
gonryun,155,122,0       duplicate(rift) Rift#256        723
hugel,88,149,0  duplicate(rift) Rift#512        723
izlude,132,120,0        duplicate(rift) Rift#1024       723
jawaii,253,130,0        duplicate(rift) Rift#2048       723
lighthalzen,151,100,0   duplicate(rift) Rift#4096       723
louyang,207,104,0       duplicate(rift) Rift#8192       723
morocc,161,97,0 duplicate(rift) Rift#16384      723
moscovia,229,198,0      duplicate(rift) Rift#32768      723
niflheim,206,176,0      duplicate(rift) Rift#65536      723
payon,182,107,0 duplicate(rift) Rift#131072     723
prontera,155,184,0      duplicate(rift) Rift#262144     723
rachel,124,105,0        duplicate(rift) Rift#524288     723
umbala,106,159,0        duplicate(rift) Rift#1048576    723
veins,213,124,0 duplicate(rift) Rift#2097152    723
xmas,150,136,0  duplicate(rift) Rift#4194304    723
yuno,162,47,0   duplicate(rift) Rift#8388608    723
Viewed 228 times, submitted by unknown.