viewing paste Unknown #652 | Plain text

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
return 0;
}
 
/*==========================================
 * @go [city_number or city_name] - Updated by Harbin
 *------------------------------------------*/
ACMD_FUNC(go)
{
        int i;
        int town;
        char map_name[MAP_NAME_LENGTH];
        int m;
 
        const struct {
                char map[MAP_NAME_LENGTH];
                int x, y;
        } data[] = {
                { MAP_CASPEN,      156, 191 }, //  0=Caspen
                { MAP_MORROC,      156,  93 }, //  1=Morroc
                { MAP_GEFFEN,      119,  59 }, //  2=Geffen
                { MAP_PAYON,       162, 233 }, //  3=Payon
                { MAP_ALBERTA,     192, 147 }, //  4=Alberta
                { MAP_IZLUDE,      128, 114 }, //  5=Izlude
                { MAP_ALDEBARAN,   140, 131 }, //  6=Al de Baran
                { MAP_LUTIE,       147, 134 }, //  7=Lutie
                { MAP_COMODO,      209, 143 }, //  8=Comodo
                { MAP_YUNO,        157,  51 }, //  9=Yuno
                { MAP_AMATSU,      198,  84 }, // 10=Amatsu
                { MAP_GONRYUN,     160, 120 }, // 11=Gonryun
                { MAP_UMBALA,       89, 157 }, // 12=Umbala
                { MAP_NIFLHEIM,     21, 153 }, // 13=Niflheim
                { MAP_LOUYANG,     217,  40 }, // 14=Louyang
                { MAP_NOVICE,       53, 111 }, // 15=Training Grounds
                { MAP_JAIL,         23,  61 }, // 16=Prison
                { MAP_JAWAII,      249, 127 }, // 17=Jawaii
                { MAP_AYOTHAYA,    151, 117 }, // 18=Ayothaya
                { MAP_EINBROCH,     64, 200 }, // 19=Einbroch
                { MAP_LIGHTHALZEN, 158,  92 }, // 20=Lighthalzen
                { MAP_EINBECH,      70,  95 }, // 21=Einbech
                { MAP_HUGEL,        96, 145 }, // 22=Hugel
                { MAP_RACHEL,      130, 110 }, // 23=Rachel
                { MAP_VEINS,       216, 123 }, // 24=Veins
                { MAP_MOSCOVIA,    223, 184 }, // 25=Moscovia
                { MAP_MIDCAMP,    180, 240 }, // 26=Midgard Camp
                { MAP_MANUK,       282, 138 }, // 27=Manuk
                { MAP_SPLENDIDE,   197, 176 }, // 28=Splendide
                { MAP_BRASILIS,    182, 239 }, // 29=Brasilis
                { MAP_DICASTES,   198, 187 }, // 30=El Dicastes
                { MAP_MORA,   44, 151 }, // 31=Mora
                { MAP_DEWATA,   200, 180 }, // 32=Dewata
                { MAP_MALANGDO,   140, 114 }, // 33=Malangdo Island
                { MAP_MALAYA,   242, 211 }, // 34=Malaya Port
                { MAP_ECLAGE,   110, 39 }, // 35=Eclage
                { MAP_PRONTERA,   110, 39 }, // 35=Prontera
        };
 
        nullpo_retr(-1, sd);
 
        if( map[sd->bl.m].flag.nogo && !pc_has_permission(sd, PC_PERM_WARP_ANYWHERE) ) {
                clif_displaymessage(sd->fd,"You can not use @go on this map.");
                return 0;
        }
 
        memset(map_name, '\0', sizeof(map_name));
        memset(atcmd_output, '\0', sizeof(atcmd_output));
 
        // get the number
        town = atoi(message);
 
        if (!message || !*message || sscanf(message, "%11s", map_name) < 1 || town < 0 || town >= ARRAYLENGTH(data))
        {// no value matched so send the list of locations
                const char* text;
 
                // attempt to find the text help string
                text = atcommand_help_string( command );
 
                // Invalid location number, or name.
                clif_displaymessage(fd, msg_txt(38));
 
                if( text )
                {// send the text to the client
                        clif_displaymessage( fd, text );
                }
               
                return -1;
        }
 
        // get possible name of the city
        map_name[MAP_NAME_LENGTH-1] = '\0';
        for (i = 0; map_name[i]; i++)
                map_name[i] = TOLOWER(map_name[i]);
        // try to identify the map name
        if (strncmp(map_name, "prontera", 3) == 0) {
                town = 36;
        } else if (strncmp(map_name, "morocc", 3) == 0) {
                town = 1;
        } else if (strncmp(map_name, "geffen", 3) == 0) {
Viewed 257 times, submitted by unknown.