Raised This Month: $51 Target: $400
 12% 

voting at the beginning of the last round?


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
TRUE RED
Senior Member
Join Date: Mar 2012
Location: Ukraine
Old 04-20-2012 , 09:23   voting at the beginning of the last round?
Reply With Quote #1

This plugin makes voting when timeleft is 20 sec but i want voting at the beginning of last round. Any ideas? Please help!
PHP Code:
#include <amxmodx>

new const PLUGIN[] = "Super Mapchooser"
new const VERSION[] = "2.0"
new const AUTHOR[] = "Prayer"

#define FLOAT_TIMELIMIT        "mp_timelimit"
#define STRING_NEXTMAP        "amx_nextmap"
#define NUM_MAXROUNDS        "mp_maxrounds"
#define NUM_WINLIMIT        "mp_winlimit"

#define NUM_SM_VOTEMAPS    "mapchooser_votemaps"
#define NUM_SM_LANG        "mapchooser_lang"
#define NUM_SM_TIME        "mapchooser_votetime"

#define NUM_SM_RED        "mapchooser_result_red"
#define NUM_SM_GREEN        "mapchooser_result_green"
#define NUM_SM_BLUE        "mapchooser_result_blue"

#define TASK_PLUGIN_ID        44747477 // +=:D
#define TASK_SCREEN_ID        979699 // +=:D:=+
#define TASK_RESULT_ID        12111 // :o

const HudLen 512

new Array:g_mapName
new g_mapNums
new g_saveids[10]

new 
g_voteCount[10]
new 
g_nextName[10]
new 
g_lastMap[32]
new 
g_currentMap[32]
new 
g_mapVoteNum

new g_votemaps
new g_maxspeed 320

new bool:hasBlocked false
new bool:forceBlock true
new bool:voteStarted true
new bool:hasExtend false
new timeleft

new bool:hasBlind[33] = { false, ... }
new 
g_msgScreenFade

new PlayersVoted 0
new PlayersNum 0

new
    
g_result_red,
    
g_result_green,
    
g_result_blue

new MenuName[96]

enum ChatColor
{
    
CHATCOLOR_NORMAL 1,     // Normal
    
CHATCOLOR_GREEN,     // Green Color
    
CHATCOLOR_TEAM_COLOR,     // Red, grey, blue
    
CHATCOLOR_GREY,     // grey
    
CHATCOLOR_RED,         // Red
    
CHATCOLOR_BLUE,     // Blue
}

new 
g_TeamName[][] = 
{
    
"",
    
"TERRORIST",
    
"CT",
    
"SPECTATOR"
}

new 
g_msgSayText
new g_msgTeamInfo

public plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
    
register_cvar("amx_extendmap_max",    "90.0")//Максимальное количество минут. Когда несколько раз продлевается карта - это значение будет максимальным в timelimit'е    
    
register_cvar("amx_extendmap_step",    "15.0")//На сколько минут продлевать карту, если проголосовали за ее продление.
    
    
register_cvar(NUM_SM_LANG,        "0")//0-Русский, 1-English
    
register_cvar(NUM_SM_TIME,        "15")//Сколько времени в секундах должно идти голосование
    
register_cvar(NUM_SM_VOTEMAPS,        "5")//Сколько карт выводить на голосование не считая карты, которую продливают в голосовании
    
    // Каким цветом показывать результаты голосования. Формат RGB
    
register_cvar(NUM_SM_RED,        "255")//Красный    
    
register_cvar(NUM_SM_GREEN,        "255")//Зеленый    
    
register_cvar(NUM_SM_BLUE,        "255")//Синий
    
    
register_event("ScreenFade",    "EVENT_ScreenFade",    "be")
    
register_event("TextMsg",    "EVENT_RestartRound",    "a",    "2&#Game_C","2&#Game_w")
    
    
g_msgSayText get_user_msgid("SayText")
    
g_msgTeamInfo get_user_msgid("TeamInfo"
    
g_msgScreenFade get_user_msgid("ScreenFade")
}

public 
plugin_cfg()
{
    
g_votemaps get_cvar_num(NUM_SM_VOTEMAPS)
    
    if(
g_votemaps 8)
        
set_cvar_num(NUM_SM_VOTEMAPS8)
    else if(
g_votemaps 1)
        
set_cvar_num(NUM_SM_VOTEMAPS1)
    
    
g_votemaps get_cvar_num(NUM_SM_VOTEMAPS)
    
    
register_menucmd(register_menuid("superMapChooserMenu"), (-1^(-1<<(g_votemaps 1))), "countVote")
    
    
g_mapName ArrayCreate(32)
    
    
get_localinfo("lastMap"g_lastMapsizeof g_lastMap -1)
    
set_localinfo("lastMap""")
    
    new 
maps_ini_file[64]
    
get_localinfo("amxx_configsdir"maps_ini_filesizeof maps_ini_file -1)
    
    
format(maps_ini_filesizeof maps_ini_file -1"%s/maps.ini"maps_ini_file)
    
    if(!
file_exists(maps_ini_file))
        
get_cvar_string("mapcyclefile"maps_ini_filesizeof maps_ini_file -1)
    
    if(
loadSettings(maps_ini_file))
        
cmdReloadTimer()
    
    
g_maxspeed get_cvar_num("sv_maxspeed")
    
    
// bugfix: need for timeleft (cs time == amxx time): !(!(remaining == left)) || !(remaining != left) :o
    
server_cmd("sv_restart 1")
    
    
get_mapname(g_currentMapsizeof g_currentMap -1)
}

public 
client_disconnect(id)
{
    
remove_task(id+TASK_SCREEN_ID)
    
remove_task(id+TASK_RESULT_ID)
    
    
hasBlind[id] = false
}

public 
EVENT_RestartRound()
    
cmdReloadTimer()

public 
cmdReloadTimer()
{
    if(
voteStarted)
    {
        
PlayersVoted 0
        PlayersNum 
0
        
        forceBlock 
true
        hasBlocked 
false
        voteStarted 
false
        
        
new players[32], numpid
        get_players
(playersnum)
        for(new 
i=0;i<num;i++)
        {
            
pid players[i]
            
            
hasBlind[pid] = false
            
            remove_task
(pid+TASK_SCREEN_ID)
            
remove_task(pid+TASK_RESULT_ID)
            
            
message_begin(MSG_ONEg_msgScreenFade_pid)
            
write_short(1<<0)
            
write_short(1<<0)
            
write_short(1<<0)
            
write_byte(0)
            
write_byte(0)
            
write_byte(0)
            
write_byte(0)
            
message_end()
        }
        
        if(!
hasExtend)
        {
            switch(
get_cvar_num(NUM_SM_LANG))
            {
                
//ĮГолосование прервано!
                
case 0colorChat(0CHATCOLOR_RED"Голосование прервано !")
                case 
1colorChat(0CHATCOLOR_RED"Voting is interrupted!")
            }
        }
        
        
set_cvar_num("sv_maxspeed"g_maxspeed)
        
        
remove_task(TASK_PLUGIN_ID)
        
        
set_task(8.0"taskListening"TASK_PLUGIN_ID""0"b")
        
taskListening()
    }
}

public 
taskListening()
{
    
timeleft get_timeleft()
    
    if(!
hasBlocked && (timeleft <= (get_cvar_num(NUM_SM_TIME) + 14)))
    {
        
change_task(TASK_PLUGIN_ID1.0)
        
        
hasBlocked true
    
}
    else if(
timeleft <= (get_cvar_num(NUM_SM_TIME)))//5 sekynd - skoka ostaetsia do smeni karti posle okon4ania golosovania
    
{
        
remove_task(TASK_PLUGIN_ID)
        
        
forceBlock false
        hasBlocked 
false
        hasExtend 
false
        
        g_result_red 
get_cvar_num(NUM_SM_RED)
        
g_result_green get_cvar_num(NUM_SM_GREEN)
        
g_result_blue get_cvar_num(NUM_SM_BLUE)
        
        
set_cvar_num("sv_maxspeed"0)
        
        switch(
get_cvar_num(NUM_SM_LANG))
        {
            
//Проголосуйте за следующую карту            
            
case 0:    format(MenuNamesizeof MenuName -1"Проголосуйте за следующую карту")
            case 
1format(MenuNamesizeof MenuName -1"Vote for the next map")
        }
        
        
cmdVoteNextmap()
    }
}

public 
cmdVoteNextmap()
{
    new
        
winlimit,
        
maxrounds
    
    winlimit 
get_cvar_num(NUM_WINLIMIT)
    
maxrounds get_cvar_num(NUM_MAXROUNDS)
    
    new
        
mkeys = ((1<<g_votemaps) + 1),
        
menu[HudLen],
        
a
    
    
new pos format(menuHudLen -1"     \r%s:^n^n"MenuName)
    new 
dmax = (g_mapNums g_votemaps) ? g_votemaps g_mapNums
    
    
new unki 0
    
    
for(g_mapVoteNum 0g_mapVoteNum dmaxg_mapVoteNum++)
    {
        
random_num(0g_mapNums -1)
        
        while(
isInMenu(a))
        {
            if(++
>= g_mapNums)
            {
                
0
            
}
        }
        
        
g_nextName[g_mapVoteNum] = a
        
        pos 
+= format(menu[pos], HudLen -1"     \y%d.\w %a^n"g_mapVoteNum 1ArrayGetStringHandle(g_mapNamea))
        
        
g_saveids[unki] = a
        unki
++
        
        
mkeys |= (1<<g_mapVoteNum)
        
        
g_voteCount[g_mapVoteNum] = 0
    
}
    
    
g_voteCount[g_votemaps] = 0
    g_voteCount
[g_votemaps 1] = 0
    
    
new language get_cvar_num(NUM_SM_LANG)
    
    if(((
winlimit maxrounds) == 0) && (get_cvar_float(FLOAT_TIMELIMIT) < get_cvar_float("amx_extendmap_max")))
    {
        switch(
language)
        {
            
//продлить            
            
case 0pos += format(menu[pos], HudLen -1"     \y%d.\w %s \y[продлить]"g_votemaps 1g_currentMap)
            case 
1pos += format(menu[pos], HudLen -1"     \y%d.\w %s \y[prolong]"g_votemaps 1g_currentMap)
        }
        
        
mkeys |= (1<<g_votemaps)
    }
    
    
set_task(get_cvar_float(NUM_SM_TIME), "checkVotes"TASK_PLUGIN_ID)
    
    new 
players[32], pid
    get_players
(playersPlayersNum)
    for(new 
i=0;i<PlayersNum;i++)
    {
        
pid players[i]
        
        
hasBlind[pid] = true
        
        show_menu
(pidmkeysmenuget_cvar_num(NUM_SM_TIME), "superMapChooserMenu")
        
        switch(
language)
        {
            
//Голосование начато!
            
case 0colorChat(pidCHATCOLOR_GREEN"Голосование начато !")
            case 
1colorChat(pidCHATCOLOR_GREEN"Voting started")
        }
        
        
client_cmd(pid"spk gman/gman_choose1")
        
        
message_begin(MSG_ONEg_msgScreenFade_pid)
        
write_short(1<<12)    // Duration
        
write_short(1<<9)    // Hold time
        
write_short(1<<0)    // Fade type
        
write_byte(0)        // Red
        
write_byte(0)        // Green
        
write_byte(0)        // Blue
        
write_byte(255)        // Alpha
        
message_end()
        
        
set_task(1.0"cmdFadeScreen"pid+TASK_SCREEN_ID""0"b")
    }
    
    
voteStarted true
    
    log_amx
("Super Vote: Voting for the nextmap started")
}

public 
checkVotes()
{
    new 
bolt 0
    
    
for(new 0g_mapVoteNuma++)
    {
        if(
g_voteCount[bolt] < g_voteCount[a])
        {
            
bolt a
        
}
    }
    
    
//clear removed channel #2 :/
    
set_hudmessage(_,_,_,_,_,_,_,_,_,_,2)
    
show_hudmessage(0" ")
    
    new 
players[32], numpid
    get_players
(playersnum)
    
    if((
g_voteCount[g_votemaps] > g_voteCount[bolt]) && (g_voteCount[g_votemaps] > g_voteCount[g_votemaps 1]))
    {    
        new 
Float:steptime get_cvar_float("amx_extendmap_step")
        
        
set_cvar_float(FLOAT_TIMELIMITget_cvar_float(FLOAT_TIMELIMIT) + steptime)
        
        
set_hudmessage(2551270, -1.00.2520.110.00.051.01)
        
        for(new 
i=0;i<num;i++)
        {
            
pid players[i]
            
            switch(
get_cvar_num(NUM_SM_LANG))
            {
                case 
0:
                {
                    
//Голосование завершено. Эта карта продлена на %.0f мин
                    
colorChat(pidCHATCOLOR_GREEN"Голосование завершено.^x01 Эта карта продлена на %.0f мин"steptime)
                    
                    
//Эта карта продлена на %.0f мин
                    
show_hudmessage(pid"Эта карта продлена на %.0f мин"steptime)
                }
                case 
1:
                {
                    
colorChat(pidCHATCOLOR_GREEN"Voting is finished. This map is prolonged on %.0f minutes"steptime)
                    
show_hudmessage(pid"This map is prolonged on %.0f minutes"steptime)
                }
            }
        }
        
        
log_amx("Super Vote: Voting for the nextmap finished. Map %s will be extended to next %.0f minutes"g_currentMapsteptime)
        
        
hasExtend true
        
        cmdReloadTimer
()
        
        return
    }
    
    new 
smap[32]
    
    if(
g_voteCount[bolt] && (g_voteCount[g_votemaps 1] <= g_voteCount[bolt]))
    {
        
ArrayGetString(g_mapNameg_nextName[bolt], smapsizeof smap -1)
        
set_cvar_string(STRING_NEXTMAPsmap)
    }
    
    
get_cvar_string(STRING_NEXTMAPsmapsizeof smap -1)
    
    
set_hudmessage(2551270, -1.00.4220.110.00.051.01)
    
    for(new 
i=0;i<num;i++)
    {
        
pid players[i]
        
        
remove_task(pid+TASK_RESULT_ID)
        
        switch(
get_cvar_num(NUM_SM_LANG))
        {
            case 
0:
            {
                
//Голосование завершено.^x01 Следующая карта:^x04 %s
                
colorChat(pidCHATCOLOR_GREEN"Голосование завершено.^x01 Следующая карта:^x04 %s"smap)
                
                
//Следующая карта %s
                
show_hudmessage(pid"Следующая карта %s"smap)
            }
            case 
1:
            {
                
colorChat(pidCHATCOLOR_GREEN"Voting is finished.^x01 Nextmap:^x04 %s"smap)
                
show_hudmessage(pid"Nextmap will be %s"smap)
            }
        }
    }
    
    
log_amx("Super Vote: Voting for the nextmap finished. The nextmap will be %s"smap)
}

public 
countVote(idkey)
{
    if(!
voteStarted && forceBlock)
        return 
PLUGIN_HANDLED
    
    
if(get_cvar_float("amx_vote_answers"))
    {
        new 
name[32]
        
get_user_name(idnamesizeof name -1)
        
        if(
key == g_votemaps)
        {
            switch(
get_cvar_num(NUM_SM_LANG))
            {
                
//Голосование завершено.^x01 Следующая карта:^x04 %s            
                
case 0colorChat(0CHATCOLOR_GREEN"%s^x01 проголосовал за^x04 продление карты"name)
                case 
1colorChat(0CHATCOLOR_GREEN"%s^x01 chose^x04 map extending"name
            }
        }
        else if(
key g_votemaps)
        {
            new 
map[32]
            
ArrayGetString(g_mapNameg_nextName[key], mapsizeof map -1)
            
            switch(
get_cvar_num(NUM_SM_LANG))
            {
                
//%s^x01 проголосовал за^x04 продление карты
                
case 0colorChat(0CHATCOLOR_GREEN"%s^x01 проголосовал за^x04 %s"namemap)
                case 
1colorChat(0CHATCOLOR_GREEN"%s^x01 chose^x04 %s"namemap)
            }
        }
        
        
cmdShowResults(id+TASK_RESULT_ID)
        
set_task(0.8"cmdShowResults"id+TASK_RESULT_ID""0"b")
    }
    
    
client_cmd(id"spk UI/buttonclickrelease")
    
    
g_voteCount[key]++
    
PlayersVoted++
    
    return 
PLUGIN_HANDLED
}

public 
cmdShowResults(pid)
{
    static 
id
    id 
pid-TASK_RESULT_ID
    
    
if(is_user_connected(id))
    {
        static 
ilenlanguagemessage[HudLen]
        
        
language get_cvar_num(NUM_SM_LANG)
        
        switch(
language)
        {
            
//Результаты голосования
            
case 0len format(messagesizeof message -1"Результаты голосования^n^n")
            case 
1len format(messagesizeof message -1"Results of voting^n^n")
        }
        
        for(
i=0;i<g_votemaps;i++)
        {
            
len += format(message[len], HudLen -1"[%d] | %a^n"g_voteCount[i], ArrayGetStringHandle(g_mapNameg_saveids[i]))
        }
        
        switch(
language)
        {
            case 
0:
            {
                
//продливаемая
                
len += format(message[len], HudLen -1"[%d] | %s [продливаемая]^n^n"g_voteCount[i], g_currentMap)
                
//Всего проголосовало: %d из %d
                
len += format(message[len], HudLen -1"Всего проголосовало: %d из %d"PlayersVotedPlayersNum)
            }
            case 
1:
            {
                
len += format(message[len], HudLen -1"[%d] | %s [prolonged]^n^n"g_voteCount[i], g_currentMap)
                
len += format(message[len], HudLen -1"In total has voted: %d from %d"PlayersVotedPlayersNum)
            }
        }
        
        
set_hudmessage(g_result_redg_result_greeng_result_blue0.360.301.04.00.10.22)
        
show_hudmessage(id"%s"message)
    }
}

public 
EVENT_ScreenFade(id)
{
    if(
hasBlind[id])
    {
        
set_task(0.6"cmdFadeScreen"id+TASK_SCREEN_ID)
    }
}

public 
cmdFadeScreen(pid)
{
    new 
id pid-TASK_SCREEN_ID
    
    
if(is_user_connected(id))
    {
        
message_begin(MSG_ONEg_msgScreenFade_id)
        
write_short(1<<0)    // Duration
        
write_short(1<<0)    // Hold time
        
write_short(1<<2)    // Fade type
        
write_byte(0)        // Red
        
write_byte(0)        // Green
        
write_byte(0)        // Blue
        
write_byte(255)        // Alpha
        
message_end()
    }
}

public 
plugin_end()
{
    new 
current_map[32]
    
    
set_cvar_num("sv_maxspeed"g_maxspeed)
    
    
get_mapname(current_mapsizeof current_map -1)
    
set_localinfo("lastMap"current_map)
}

stock bool:ValidMap(mapname[])
{
    if(
is_map_valid(mapname))
    {
        return 
true
    
}
    
    new 
len strlen(mapname) -4
    
    
if(len 0)
    {
        return 
false
    
}
    
    if(
equali(mapname[len], ".bsp"))
    {
        
mapname[len] = '^0'
        
        
if(is_map_valid(mapname))
        {
            return 
true
        
}
    }
    
    return 
false
}

loadSettings(filename[])
{
    if(!
file_exists(filename))
        return 
0

    
new
        
currentMap[32],
        
szText[32],
        
buff[256]
    
    
get_mapname(currentMapsizeof currentMap -1)

    new 
fp fopen(filename"r")
    
    while(!
feof(fp))
    {
        
buff[0] = '^0'
        
        
fgets(fpbuffsizeof buff -1)
        
        
parse(buffszTextsizeof szText -1)
        
        if((
szText[0] != ';') && ValidMap(szText) && !equali(szTextg_lastMap) && !equali(szTextcurrentMap))
        {
            
ArrayPushString(g_mapNameszText)
            
            
g_mapNums++
        }
    }
    
    
fclose(fp)

    return 
g_mapNums
}

bool:isInMenu(id)
{
    for(new 
0g_mapVoteNuma++)
    {
        if(
id == g_nextName[a])
        {
            return 
true
        
}
    }
    
    return 
false
}

colorChat(idChatColor:color, const msg[], {Float,Sql,Result,_}:...)
{
    new 
teamindexMSG_Type
    
new bool:teamChanged false
    
static message[192]
    
    switch(
color)
    {
        case 
CHATCOLOR_NORMAL// Normal
        
{
            
message[0] = 0x01;
        }
        case 
CHATCOLOR_GREEN// Green
        
{
            
message[0] = 0x04;
        }
        default: 
// Grey, Red, Blue
        
{
            
message[0] = 0x03;
        }
    }
    
    
vformat(message[1], 190msg4);
    
    if(
id == 0)
    {
        
index findAnyPlayer();
        
MSG_Type MSG_ALL;
    }
    else
    {
        
index id;
        
MSG_Type MSG_ONE;
    }
    if(
index != 0)
    {
        
team get_user_team(index);    
        if(
color == CHATCOLOR_RED && team != 1)
        {
            
messageTeamInfo(indexMSG_Typeg_TeamName[1])
            
teamChanged true
        
}
        else
        if(
color == CHATCOLOR_BLUE && team != 2)
        {
            
messageTeamInfo(indexMSG_Typeg_TeamName[2])
            
teamChanged true
        
}
        else
        if(
color == CHATCOLOR_GREY && team != 0)
        {
            
messageTeamInfo(indexMSG_Typeg_TeamName[0])
            
teamChanged true
        
}
        
messageSayText(indexMSG_Typemessage);
        if(
teamChanged)
        {
            
messageTeamInfo(indexMSG_Typeg_TeamName[team])
        }
    }
}

messageSayText(idtypemessage[])
{
    
message_begin(typeg_msgSayText_id)
    
write_byte(id)        
    
write_string(message)
    
message_end()
}
    
messageTeamInfo(idtypeteam[])
{
    
message_begin(typeg_msgTeamInfo_id)
    
write_byte(id)
    
write_string(team)
    
message_end()
}
    
findAnyPlayer()
{
    static 
players[32], inumpid
    
    get_players
(playersinum"ch")
    
    for (new 
0inuma++)
    {
        
pid players[a]
        if(
is_user_connected(pid))
            return 
pid
    
}
    
    return 
0
}

/*
    Плагин сделан на сайте http://www.darktower.su/ по заказу: Курица
    
    Плагины на заказ только у нас!
    http://www.darktower.su/fouroom/showthread.php?t=203
    
    А так же - помощь по серверам, различные статьи, видео уроки и много другого!
    
    Описание:
    Super MapChooser - альтернатива стандарнтому плагину mapchooser.amxx
    До окончания карты экран затухает, игроки останавливаются и предлагается выбрать карту.
    После выбора карты появляются результаты голосования - сколько игроков проголосовали, за какую карту и кол-во проголосовавших.
    По истечению времени голосования написано какая карта будет следующей.

    Переменные (уже прописаны в amxx.cfg):
    На сколько минут продлевать карту, если проголосовали за ее продление.
    amx_extendmap_step "15.0"

    Максимальное количество минут. Когда несколько раз продлевается карта - это значение будет максимальным в timelimit'е.
    amx_extendmap_max "90.0"

    Переменные (можно прописать в amxx.cfg):
    Язык отображения сообщений. (можно изменять в игре)
    mapchooser_lang "0"
    0 - Русский
    1 - English

    Сколько времени в секундах должно идти голосование. (можно изменять в игре до голосования)
    mapchooser_votetime "15"

    Сколько карт выводить на голосование не считая карты, которую продливают в голосовании. (можно изменять в игре - активируется в след. карте)
    mapchooser_votemaps "5"
    Минимальное значение 1, максимальное 8

    Каким цветом показывать результаты голосования. (можно изменять в игре до голосования)
    mapchooser_result_red "255"
    mapchooser_result_green "255"
    mapchooser_result_blue "255"

    Установка плагина:
    1) Плагин super_mapchooser.amxx кладем в папку с плагинами - addons/amxmodx/plugins
    2) Открываем файл addons/amxmodx/configs/plugins.ini
    3) Находим там строчку:
    mapchooser.amxx        ; allows to vote for next map
    4) Вместо нее вставляем строчку:
    super_mapchooser.amxx
    5) Сохраняем изменения
    6) Рестартим сервер...

    Бонусы:
    1) Цветные сообщения.
*/ 
Attached Thumbnails
Click image for larger version

Name:	first.jpg
Views:	839
Size:	86.8 KB
ID:	102431   Click image for larger version

Name:	second.jpg
Views:	655
Size:	87.9 KB
ID:	102432   Click image for larger version

Name:	third.jpg
Views:	502
Size:	68.9 KB
ID:	102433  
Attached Files
File Type: sma Get Plugin or Get Source (super_mapchooser.sma - 987 views - 19.9 KB)

Last edited by TRUE RED; 04-20-2012 at 18:13.
TRUE RED is offline
Send a message via ICQ to TRUE RED Send a message via Skype™ to TRUE RED
Old 04-20-2012, 18:14
TRUE RED
This message has been deleted by TRUE RED.
isotonic
AlliedModders Donor
Join Date: Jun 2011
Location: Moscow, Russia
Old 04-25-2012 , 17:31   Re: voting at the beginning of the last round?
Reply With Quote #2

Here it is.
isotonic is offline
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 10:53.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode