Changeset 5454

Show
Ignore:
Timestamp:
27/06/2009 19:04:00 (14 months ago)
Author:
NiLuJe
Message:

AMX Mod X:

  • Resync GeoIPEx (1.0.1)
Location:
Mirrors/AMXModX/dlls/geoip_ex
Files:
9 modified

Legend:

Unmodified
Added
Removed
  • Mirrors/AMXModX/dlls/geoip_ex/GeoIP.c

    r5448 r5454  
    156156and South America. */ 
    157157 
    158 const char GeoIP_country_continent[253][3] = {"--","AS","EU","EU","AS","AS","SA","SA","EU","AS","SA", 
     158const char GeoIP_country_continent[253][3] =  
     159{ 
     160        "--", 
     161        "AS","EU","EU","AS","AS","SA","SA","EU","AS","SA", 
    159162        "AF","AN","SA","OC","EU","OC","SA","AS","EU","SA", 
    160163        "AS","EU","AF","EU","AS","AF","AF","SA","AS","SA", 
     
    181184        "SA","SA","AS","OC","OC","OC","AS","AF","EU","AF", 
    182185        "AF","EU","AF","--","--","--","EU","EU","EU","EU", 
    183   "SA","SA"}; 
     186        "SA","SA" 
     187}; 
     188 
     189/*  
     190        0 - None 
     191        1 - AF = Africa 
     192        2 - AS = Asia 
     193        3 - EU = Europe 
     194        4 - NA = North America 
     195        5 - OC = Oceania 
     196        6 - SA = South America 
     197*/ 
     198const int GeoIP_country_continent2[253] =  
     199{  
     200    0, 
     201    2,3,3,2,2,6,6,3,2,6, 
     202    1,4,6,5,3,5,6,2,3,6, 
     203    2,3,1,3,2,1,1,6,2,6, 
     204    6,6,2,1,1,3,6,4,2,1, 
     205    1,1,3,1,5,6,1,2,6,6, 
     206    6,1,2,2,3,3,1,3,6,6, 
     207    1,6,3,1,1,1,3,1,3,5, 
     208    6,5,3,3,3,1,3,6,2,6, 
     209    1,3,6,1,1,6,1,3,6,6, 
     210    5,1,6,2,1,6,3,6,3,2, 
     211    3,2,2,2,2,2,3,3,6,2, 
     212    2,1,2,2,5,1,6,2,2,2, 
     213    6,2,2,2,6,3,2,1,1,3, 
     214    3,3,1,1,3,3,1,5,3,1, 
     215    2,2,2,5,6,1,6,3,1,2, 
     216    1,4,2,1,1,5,1,5,1,6, 
     217    3,3,2,5,5,5,2,6,6,5, 
     218    5,2,2,3,6,5,6,2,3,5, 
     219    6,2,1,3,2,1,2,5,1,1, 
     220    3,2,1,3,3,3,1,3,1,1, 
     221    6,1,6,2,1,6,1,1,1,2, 
     222    2,5,2,1,5,2,2,6,5,2, 
     223    1,3,1,5,4,6,2,3,6,6, 
     224    6,6,2,5,5,5,2,1,3,1, 
     225    1,3,1,0,0,0,3,3,3,3, 
     226    6,6 
     227}; 
    184228 
    185229const char * GeoIPDBDescription[NUM_DB_TYPES] = {NULL, "GeoIP Country Edition", "GeoIP City Edition, Rev 1", "GeoIP Region Edition, Rev 1", "GeoIP ISP Edition", "GeoIP Organization Edition", "GeoIP City Edition, Rev 0", "GeoIP Region Edition, Rev 0","GeoIP Proxy Edition","GeoIP ASNum Edition","GeoIP Netspeed Edition","GeoIP Domain Name Edition"}; 
  • Mirrors/AMXModX/dlls/geoip_ex/GeoIP.h

    r5442 r5454  
    130130extern const char * GeoIP_country_name[253]; 
    131131extern const char GeoIP_country_continent[253][3]; 
     132extern const int GeoIP_country_continent2[253]; 
    132133 
    133134#ifdef DLL 
  • Mirrors/AMXModX/dlls/geoip_ex/GeoIPCity.c

    r5442 r5454  
    8181        /* get country */ 
    8282        record->continent_code = (char *) GeoIP_country_continent[record_buf[0]]; 
     83        record->continent_code2 = (int) GeoIP_country_continent2[record_buf[0]]; 
    8384        record->country_code = (char *) GeoIP_country_code [record_buf[0]]; 
    8485        record->country_code3 = (char *) GeoIP_country_code3[record_buf[0]]; 
  • Mirrors/AMXModX/dlls/geoip_ex/GeoIPCity.h

    r5441 r5454  
    4646        int charset; 
    4747        char *continent_code; 
     48        int continent_code2; 
    4849} GeoIPRecord; 
    4950 
  • Mirrors/AMXModX/dlls/geoip_ex/geoip_amxx.cpp

    r5448 r5454  
    1717} 
    1818 
    19 /* Depreceted */ 
     19/* Deprecated */ 
    2020static cell AMX_NATIVE_CALL amx_geoip_code2(AMX *amx, cell *params) 
    2121{ 
     
    2929} 
    3030 
    31 /* Depreceted */ 
     31/* Deprecated */ 
    3232static cell AMX_NATIVE_CALL amx_geoip_code3( AMX *amx, cell *params ) 
    3333{ 
     
    246246        { 
    247247                int len = 0; 
    248                 char *ip = MF_GetAmxString(amx, params[1], 0, &len); 
     248                char *ip = MF_GetAmxString( amx, params[1], 0, &len ); 
    249249 
    250250                StripPort( ip ); 
     
    254254                { 
    255255                        MF_SetAmxString( amx, params[2], rec->continent_code, 2 ); 
    256                         return 1; 
     256                        return rec->continent_code2; 
    257257                } 
    258258        } 
     
    263263static cell AMX_NATIVE_CALL amx_geoip_distance( AMX *amx, cell *params ) 
    264264{ 
    265         REAL RAD_CONVERT  =     (REAL)M_PI / 180; 
    266         REAL EARTH_RADIUS =     (REAL)6378.2; 
     265        REAL RAD_CONVERT  = (REAL)0.017453292519943; // ( PI / 180 ) 
     266        REAL EARTH_RADIUS = (REAL)( params[5] ? 3959.0 : 6371.0 ); // miles / km 
    267267 
    268268        REAL lat1 = amx_ctof( params[1] ) * RAD_CONVERT; 
  • Mirrors/AMXModX/dlls/geoip_ex/geoip_amxx.h

    r5448 r5454  
    33 
    44#define GEOIPDATADIR "" 
    5  
    6 #define M_PI                    3.14159265358979323846 
    7  
    85 
    96#include <math.h> 
  • Mirrors/AMXModX/dlls/geoip_ex/include/geoip_ex.inc

    r5448 r5454  
    133133native geoip_timezone( const ip[], result[], len = 45 ); 
    134134 
    135 /** 
    136  * Lookup the two character continent code for a given IP address. 
     135 * Lookup the continent code for a given IP address. 
    137136 * 
     137 * @note The code can be retrieved as integer number or string (2 characters). 
    138138 * @note Possible continent codes are AF, AS, EU, NA, OC, SA for  
    139  * Africa, Asia, Europe, North America, Oceania and South America. 
     139 * Africa(1), Asia(2), Europe(3), North America(4), Oceania(5) and South America(6). 
    140140 * 
    141141 * @param ip            The IP address to lookup. 
    142  * @return                      true on a successful lookup, false on a failed lookup. 
     142 * @param result        The result of the geoip lookup. This param is optional.  
     143 *                                      If the lookup does not succeed, the buffer is not modified. 
     144 * @return                      The result of the geoip lookup, 0 on a failed lookup. 
    143145 */ 
    144 native bool:geoip_continent_code( const ip[], result[3] ); 
    145  
     146enum Continent 
     147{ 
     148        AFRICA = 1, 
     149        ASIA, 
     150        EUROPE, 
     151        NORTH_AMERICA, 
     152        OCEANIA, 
     153        SOUTH_AMERICA 
     154} 
     155native Continent:geoip_continent_code( const ip[], result[3] = "" ); 
    146156/** 
    147157 * Calculate the distance between geographical coordinates, latitude and longitude. 
     
    151161 * @param lat2          The second IP latitude. 
    152162 * @param lon2          The second IP longitude. 
    153  * @param result        The distance as result in kilometer. 
     163 * @param system    The system of measurement, 0 = Meteric(kilometers) or 1 = English(miles).   
     164 * @return                      The distance as result in specified system of measurement. 
    154165 */ 
    155 native Float:geoip_distance( Float:lat1, Float:lon1, Float:lat2, Float:lon2 ); 
     166native Float:geoip_distance( Float:lat1, Float:lon1, Float:lat2, Float:lon2, system = 0 ); 
  • Mirrors/AMXModX/dlls/geoip_ex/msvc8/geoip.vcproj

    r5448 r5454  
    124124                        <Tool 
    125125                                Name="VCCLCompilerTool" 
     126                                Optimization="4" 
    126127                                AdditionalIncludeDirectories="..\;..\sdk" 
    127128                                PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;GEOIP_EXPORTS" 
  • Mirrors/AMXModX/dlls/geoip_ex/sdk/moduleconfig.h

    r5443 r5454  
    1616 */ 
    1717#define MODULE_NAME "GeoIP Extented" 
    18 #define MODULE_VERSION "1.0.0" 
     18#define MODULE_VERSION "1.0.1" 
    1919#define MODULE_AUTHOR "AMX Mod X Dev Team / Arkshine" 
    2020#define MODULE_URL "http://www.amxmodx.org/"