Контакты Поиск

[ вход ]
[ последние сообщения ]

  • Страница 1 из 1
  • 1
Форум » SourceMod >> CS:Source >> CSGO » Обсуждение » Ошибка при компиляции
Ошибка при компиляции
serm Дата: Четверг, 25.07.2013, 17:05:46 | Сообщение # 1
Сообщений: 137
Репутация: 7 [ +/- ]
Ребята помогите меня уже задолбала ошибка error 038 extra characters on line
И главное что ошибку выдает на первой строчке
Код

#pragma semicolon 1
#include <sourcemod>

Там не может быть ошибки , кодировка utf8 без BOM

Пробовал несколько компиляторов ...
Без результативно
 
serm Дата: Четверг, 25.07.2013, 17:12:46 | Сообщение # 2
Сообщений: 137
Репутация: 7 [ +/- ]
Вот еще пример ошибок компиляции

Код

/**
  * vim: set ts=4 :
  * =============================================================================
  * SourceMod Rock The Vote Plugin
  * Creates a map vote when the required number of players have requested one.
  *
  * SourceMod (C)2004-2008 AlliedModders LLC.  All rights reserved.
  * =============================================================================
  *
  * This program is free software; you can redistribute it and/or modify it under
  * the terms of the GNU General Public License, version 3.0, as published by the
  * Free Software Foundation.
  *  
  * This program is distributed in the hope that it will be useful, but WITHOUT
  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  * FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
  * details.
  *
  * You should have received a copy of the GNU General Public License along with
  * this program.  If not, see <http://www.gnu.org/licenses/>.
  *
  * As a special exception, AlliedModders LLC gives you permission to link the
  * code of this program (as well as its derivative works) to "Half-Life 2," the
  * "Source Engine," the "SourcePawn JIT," and any Game MODs that run on software
  * by the Valve Corporation.  You must obey the GNU General Public License in
  * all respects for all other code used.  Additionally, AlliedModders LLC grants
  * this exception to all derivative works.  AlliedModders LLC defines further
  * exceptions, found in LICENSE.txt (as of this writing, version JULY-31-2007),
  * or <http://www.sourcemod.net/license.php>.
  *
  * Version: $Id$
  */

#include <sourcemod>
#include <mapchooser>
#include <nextmap>

#pragma semicolon 1

public Plugin:myinfo =
{
  name = "Rock The Vote",
  author = "AlliedModders LLC",
  description = "Provides RTV Map Voting",
  version = SOURCEMOD_VERSION,
  url = "http://www.sourcemod.net/"
};

new Handle:g_Cvar_Needed = INVALID_HANDLE;
new Handle:g_Cvar_MinPlayers = INVALID_HANDLE;
new Handle:g_Cvar_InitialDelay = INVALID_HANDLE;
new Handle:g_Cvar_Interval = INVALID_HANDLE;
new Handle:g_Cvar_ChangeTime = INVALID_HANDLE;
new Handle:g_Cvar_RTVPostVoteAction = INVALID_HANDLE;

new bool:g_CanRTV = false;  // True if RTV loaded maps and is active.
new bool:g_RTVAllowed = false;    // True if RTV is available to players. Used to delay rtv votes.
new g_Voters = 0;    // Total voters connected. Doesn't include fake clients.
new g_Votes = 0;    // Total number of "say rtv" votes
new g_VotesNeeded = 0;   // Necessary votes before map vote begins. (voters * percent_needed)
new bool:g_Voted[MAXPLAYERS+1] = {false, ...};

new bool:g_InChange = false;

public OnPluginStart()
{
  LoadTranslations("common.phrases");
  LoadTranslations("rockthevote.phrases");
   
  g_Cvar_Needed = CreateConVar("sm_rtv_needed", "0.60", "Percentage of players needed to rockthevote (Def 60%)", 0, true, 0.05, true, 1.0);
  g_Cvar_MinPlayers = CreateConVar("sm_rtv_minplayers", "0", "Number of players required before RTV will be enabled.", 0, true, 0.0, true, float(MAXPLAYERS));
  g_Cvar_InitialDelay = CreateConVar("sm_rtv_initialdelay", "30.0", "Time (in seconds) before first RTV can be held", 0, true, 0.00);
  g_Cvar_Interval = CreateConVar("sm_rtv_interval", "240.0", "Time (in seconds) after a failed RTV before another can be held", 0, true, 0.00);
  g_Cvar_ChangeTime = CreateConVar("sm_rtv_changetime", "0", "When to change the map after a succesful RTV: 0 - Instant, 1 - RoundEnd, 2 - MapEnd", _, true, 0.0, true, 2.0);
  g_Cvar_RTVPostVoteAction = CreateConVar("sm_rtv_postvoteaction", "0", "What to do with RTV's after a mapvote has completed. 0 - Allow, success = instant change, 1 - Deny", _, true, 0.0, true, 1.0);
   
  RegConsoleCmd("say", Command_Say);
  RegConsoleCmd("say_team", Command_Say);
   
  RegConsoleCmd("sm_rtv", Command_RTV);
   
  AutoExecConfig(true, "rtv");
}

public OnMapStart()
{
  g_Voters = 0;
  g_Votes = 0;
  g_VotesNeeded = 0;
  g_InChange = false;
   
  /* Handle late load */
  for (new i=1; i<=MaxClients; i++)
  {
   if (IsClientConnected(i))
   {
    OnClientConnected(i);  
   }  
  }
}

public OnMapEnd()
{
  g_CanRTV = false;  
  g_RTVAllowed = false;
}

public OnConfigsExecuted()
{  
  g_CanRTV = true;
  g_RTVAllowed = false;
  CreateTimer(GetConVarFloat(g_Cvar_InitialDelay), Timer_DelayRTV, _, TIMER_FLAG_NO_MAPCHANGE);
}

public OnClientConnected(client)
{
  if(IsFakeClient(client))
   return;
   
  g_Voted[client] = false;

  g_Voters++;
  g_VotesNeeded = RoundToFloor(float(g_Voters) * GetConVarFloat(g_Cvar_Needed));
   
  return;
}

public OnClientDisconnect(client)
{
  if(IsFakeClient(client))
   return;
   
  if(g_Voted[client])
  {
   g_Votes--;
  }
   
  g_Voters--;
   
  g_VotesNeeded = RoundToFloor(float(g_Voters) * GetConVarFloat(g_Cvar_Needed));
   
  if (!g_CanRTV)
  {
   return;  
  }
   
  if (g_Votes &&  
   g_Voters &&  
   g_Votes >= g_VotesNeeded &&  
   g_RTVAllowed )  
  {
   if (GetConVarInt(g_Cvar_RTVPostVoteAction) == 1 && HasEndOfMapVoteFinished())
   {
    return;
   }
    
   StartRTV();
  }  
}

public Action:Command_RTV(client, args)
{
  if (!g_CanRTV || !client)
  {
   return Plugin_Handled;
  }
   
  AttemptRTV(client);
   
  return Plugin_Handled;
}

public Action:Command_Say(client, args)
{
  if (!g_CanRTV || !client)
  {
   return Plugin_Continue;
  }
   
  decl String:text[192];
  if (!GetCmdArgString(text, sizeof(text)))
  {
   return Plugin_Continue;
  }
   
  new startidx = 0;
  if(text[strlen(text)-1] == '"')
  {
   text[strlen(text)-1] = '\0';
   startidx = 1;
  }
   
  new ReplySource:old = SetCmdReplySource(SM_REPLY_TO_CHAT);
   
  if (strcmp(text[startidx], "rtv", false) == 0 || strcmp(text[startidx], "rockthevote", false) == 0)
  {
   AttemptRTV(client);
  }
   
  SetCmdReplySource(old);
   
  return Plugin_Continue;  
}

AttemptRTV(client)
{
  if (!g_RTVAllowed  || (GetConVarInt(g_Cvar_RTVPostVoteAction) == 1 && HasEndOfMapVoteFinished()))
  {
   ReplyToCommand(client, "[SM] %t", "RTV Not Allowed");
   return;
  }
    
  if (!CanMapChooserStartVote())
  {
   ReplyToCommand(client, "[SM] %t", "RTV Started");
   return;
  }
   
  if (GetClientCount(true) < GetConVarInt(g_Cvar_MinPlayers))
  {
   ReplyToCommand(client, "[SM] %t", "Minimal Players Not Met");
   return;    
  }
   
  if (g_Voted[client])
  {
   ReplyToCommand(client, "[SM] %t", "Already Voted", g_Votes, g_VotesNeeded);
   return;
  }  
   
  new String:name[64];
  GetClientName(client, name, sizeof(name));
   
  g_Votes++;
  g_Voted[client] = true;
   
  PrintToChatAll("[SM] %t", "RTV Requested", name, g_Votes, g_VotesNeeded);
   
  if (g_Votes >= g_VotesNeeded)
  {
   StartRTV();
  }  
}

public Action:Timer_DelayRTV(Handle:timer)
{
  g_RTVAllowed = true;
}

StartRTV()
{
  if (g_InChange)
  {
   return;  
  }
   
  if (EndOfMapVoteEnabled() && HasEndOfMapVoteFinished())
  {
   /* Change right now then */
   new String:map[65];
   if (GetNextMap(map, sizeof(map)))
   {
    PrintToChatAll("[SM] %t", "Changing Maps", map);
    CreateTimer(5.0, Timer_ChangeMap, _, TIMER_FLAG_NO_MAPCHANGE);
    g_InChange = true;
     
    ResetRTV();
     
    g_RTVAllowed = false;
   }
   return;  
  }
   
  if (CanMapChooserStartVote())
  {
   new MapChange:when = MapChange:GetConVarInt(g_Cvar_ChangeTime);
   InitiateMapChooserVote(when);
    
   ResetRTV();
    
   g_RTVAllowed = false;
   CreateTimer(GetConVarFloat(g_Cvar_Interval), Timer_DelayRTV, _, TIMER_FLAG_NO_MAPCHANGE);
  }
}

ResetRTV()
{
  g_Votes = 0;
     
  for (new i=1; i<=MAXPLAYERS; i++)
  {
   g_Voted[i] = false;
  }
}

public Action:Timer_ChangeMap(Handle:hTimer)
{
  g_InChange = false;
   
  LogMessage("RTV changing map manually");
   
  new String:map[65];
  if (GetNextMap(map, sizeof(map)))
  {  
   ForceChangeLevel(map, "RTV after mapvote");
  }
   
  return Plugin_Stop;
}


Плагин для смены карты RTV

Компилирую через комп с кодировкой utf8 без BOM

Проблема появилась сегодня , вчера еще все работало , все компилировало !
Помогите кто знает просто я в панике grust

Прикрепления: 0669221.png(67.4 Kb)
 
Андрей1854 Дата: Четверг, 25.07.2013, 17:37:25 | Сообщение # 3
Сообщений: 15
Репутация: 0 [ +/- ]
у меня норм скомпилировалось.Использовал sourcemod v 1.5 с офф сайта.
 
serm Дата: Четверг, 25.07.2013, 17:38:17 | Сообщение # 4
Сообщений: 137
Репутация: 7 [ +/- ]
Вот в том то и проблема использовал тоже sm 1.5 с офф сайта .
 
ThRunningMan Дата: Четверг, 25.07.2013, 19:25:13 | Сообщение # 5
Сообщений: 140
Репутация: 12 [ +/- ]
пробуй скопировать с другого плагина эти строчки, котоыре сейчас просто удали опусти ниже курсор и вставь скопированное и проверь
 
Форум » SourceMod >> CS:Source >> CSGO » Обсуждение » Ошибка при компиляции
  • Страница 1 из 1
  • 1
Поиск: