Контакты/сообщить об ошибке Поиск

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

  • Страница 1 из 1
  • 1
Форум » SourceMod >> CS:Source >> CSGO » Обсуждение » Не вижу ошибку кода, меню не открывается
Не вижу ошибку кода, меню не открывается
SourceSamil Дата: Четверг, 15.01.2015, 17:41:08 | Сообщение # 1
Сообщений: 237
Репутация: [ +/- ]
Код
#pragma semicolon 1

#include <sourcemod>
#include <sdktools>

#define ALPHA_SET 0.5
#define DURATION_SET 0.0

new bool:bActiveBlock[MAXPLAYERS + 1];
new bool:bBuyActive[MAXPLAYERS + 1];
new g_iAmount;
new Handle:hAntiFlashPrice;

new g_iFlashAlpha = -1;
new g_iFlashDuration = -1;

public Plugin:myinfo =
{
name = "Buy_AntiFlash",
description = "",
author = "@Samil#",
version = "1.0",
url = "реклама.."
};

public OnPluginStart()
{
RegConsoleCmd("sm_gunflash", openmenu, "Открывает меню");
HookEvent("flashbang_detonate", OnFlashDetonate);
HookEvent("round_end", OnRoundEnd);
HookEvent("player_death", OnPlayerDeath);
hAntiFlashPrice = CreateConVar("sm_price_item", "5000", "Стоимость антифлеша в игровой волюте <$>");
}

public OnClientPostAdminCheck(client)
{
if (bBuyActive[client]) bBuyActive[client] = false;
if (bActiveBlock[client]) bActiveBlock[client] = false;
}

public Action:openmenu(client, args)
{
if (IsPlayerAlive(client))
{
new iAntiFlashPrice = GetConVarInt(hAntiFlashPrice);
g_iAmount = GetEntProp(client,Prop_Send,"m_iAccount");
if (g_iAmount >= iAntiFlashPrice)
{
if (!bBuyActive[client])
{
SetEntProp(client, Prop_Send, "m_iAccount", g_iAmount - iAntiFlashPrice);
}
MenuChoise(client);
bBuyActive[client] = true;
}
else
{
PrintToChat(client, "У вас не хватает денег ваши деньги %d", g_iAmount);
PrintToChat(client, "Цена антифлеша %d", iAntiFlashPrice);
}
}
else
{
PrintToChat(client, "Чтобы купить антифлеш, нужно быть живым");
}
}

stock MenuChoise(client)
{
new Handle:hmenu = CreateMenu(Select_ChoiseMenu);
SetMenuTitle(hmenu, "Выберите действие:");
AddMenuItem(hmenu, "", "Включить защиту");
AddMenuItem(hmenu, "", "Выключить защиту");
AddMenuItem(hmenu, "", "Выкинуть защиту");
SetMenuExitButton(hmenu, true);
DisplayMenu(hmenu, client, 0);
}

public Select_ChoiseMenu(Handle:hmenu, MenuAction:action, client, option)
{
if (action == MenuAction_End)
{
CloseHandle(hmenu);
return;
}
if (action == MenuAction_Select)
{
switch(option)
{
case 0:
{
Activity(client);
bActiveBlock[client] = true;
}
case 1:
{
DisActivity(client);
bActiveBlock[client] = false;
ActiveFlash(client);
}
case 2:
{
DisActivity(client);
bBuyActive[client] = false;
bActiveBlock[client] = false;
ActiveFlash(client);
}
}
}
}

public OnRoundEnd(Handle:event, const String:name[], bool:dontBroadcast)
{
for(new x = 1; x <= MaxClients; x++)
{
DisActivity(x);
if (bBuyActive[x]) bBuyActive[x] = false;
if (bActiveBlock[x]) bActiveBlock[x] = false;
}
}

public OnPlayerDeath(Handle:event, const String:name[], bool:dontBroadcast)
{
new client = GetClientOfUserId(GetEventInt(event,"userid"));
DisActivity(client);
if (bBuyActive[client]) bBuyActive[client] = false;
if (bActiveBlock[client]) bActiveBlock[client] = false;
}

public OnPlayerBlind(Handle:event, const String:name[], bool:dontBroadcast)
{
new client = GetClientOfUserId(GetEventInt(event,"userid"));
if (bActiveBlock[client] && IsClientObserver(client))
{
StopFlash(client);
}
}

public OnFlashDetonate(Handle:event, const String:name[], bool:dontBroadcast)
{
new client = GetClientOfUserId(GetEventInt(event,"userid"));
decl Float:DetonateOrigin[3], Float:EyePosition[3];
DetonateOrigin[0] = GetEventFloat(event, "x");
DetonateOrigin[1] = GetEventFloat(event, "y");
DetonateOrigin[2] = GetEventFloat(event, "z");
GetClientEyePosition(client, EyePosition);
if (GetVectorDistance(DetonateOrigin, EyePosition) <= 1500.0)
{
EyePosition[2] -= 0.5;
new Handle:trace = TR_TraceRayFilterEx(DetonateOrigin, EyePosition, CONTENTS_SOLID, RayType_EndPoint, FilterTarget, client);
if ((TR_DidHit(trace) && TR_GetEntityIndex(trace) == client) || (GetVectorDistance(DetonateOrigin, EyePosition) <= 100.0))
{
if (bActiveBlock[client]) StopFlash(client);
CloseHandle(trace);
}
}
}

Activity(client)
{
new Handle:h_msg = StartMessageOne("Fade", client);
if (h_msg != INVALID_HANDLE)
{
BfWriteShort(h_msg, 0x0001);
BfWriteByte(h_msg, 128);
BfWriteByte(h_msg, 128);
BfWriteByte(h_msg, 128);
BfWriteByte(h_msg, 85);
EndMessage();
}
}

DisActivity(client)
{
new Handle:h_msg = StartMessageOne("Fade", client);
if (h_msg != INVALID_HANDLE)
{
BfWriteShort(h_msg, 0x0001);
BfWriteByte(h_msg, 255);
BfWriteByte(h_msg, 255);
BfWriteByte(h_msg, 255);
BfWriteByte(h_msg, 0);
EndMessage();
}
}

public bool:FilterTarget(entity, contentsMask, any:data)
{
return (data == entity);
}

StopFlash(client)
{
SetEntDataFloat(client, g_iFlashAlpha, ALPHA_SET);
SetEntDataFloat(client, g_iFlashDuration, DURATION_SET);
ClientCommand(client, "dsp_player 0.0");
}

ActiveFlash(client)
{
ClientCommand(client, "dsp_player 1.0");
}

Прикрепления: 4465501.sp(5.0 Kb)


Сообщение отредактировал SourceSamil - Пятница, 16.01.2015, 19:23:10
 
TEIN Дата: Четверг, 15.01.2015, 17:57:08 | Сообщение # 2
Сообщений: 568
Репутация: 78 [ +/- ]
нормально код выложи


Сообщение отредактировал TEIN - Четверг, 15.01.2015, 17:57:18
 
SourceSamil Дата: Четверг, 15.01.2015, 18:41:02 | Сообщение # 3
Сообщений: 237
Репутация: [ +/- ]
Сделал

Добавлено (15.01.2015, 18:41:02)
---------------------------------------------
Жду помощи(=

 
TEIN Дата: Четверг, 15.01.2015, 18:53:35 | Сообщение # 4
Сообщений: 568
Репутация: 78 [ +/- ]
Есть тег [ code ] [ /code ], а лучше файлик дополнительно заливай
 
«SeReGa»☆ Дата: Пятница, 16.01.2015, 08:01:17 | Сообщение # 5
Сообщений: 395
Репутация: 37 [ +/- ]
diavol2 походу мы что-то упустили)
 
SourceSamil Дата: Пятница, 16.01.2015, 19:19:58 | Сообщение # 6
Сообщений: 237
Репутация: [ +/- ]
Ну так подскажите ошибку(=
 
«SeReGa»☆ Дата: Пятница, 16.01.2015, 19:39:22 | Сообщение # 7
Сообщений: 395
Репутация: 37 [ +/- ]
ДА ты умник))

Код
[SM]   [0]  Line 217,\scripting\include\usermessages.inc::StartMessageOne()
[SM]   [1]  Line 175, SourceSamil.sp::DisActivity()
[SM]   [2]  Line 116, SourceSamil.sp::OnRoundEnd()
[SM] Native "StartMessage" reported: Client 22 is not connected
[SM] Displaying call stack trace for plugin "SourceSamil.smx":

Прикрепления: 2861618.sp(5.2 Kb)


Сообщение отредактировал «SeReGa»☆ - Пятница, 16.01.2015, 23:49:34
 
SourceSamil Дата: Суббота, 17.01.2015, 08:22:40 | Сообщение # 8
Сообщений: 237
Репутация: [ +/- ]
Я забыл инк...

Добавлено (17.01.2015, 08:22:40)
---------------------------------------------
SM] Unable to load plugin "buy_antiflash.smx": Native "__FLOAT_LE__" was not found

 
хвостег Дата: Суббота, 17.01.2015, 12:17:28 | Сообщение # 9
Сообщений: 161
Репутация: 53 [ +/- ]
Цитата SourceSamil ()
SM] Unable to load plugin "buy_antiflash.smx": Native "__FLOAT_LE__" was not found

Ты компилировал компилятором, который отличается от того, который находится на сервере.
Скомпилируй именно под ту версию сурсмода, что у тебя на сервере установлена.
 
Форум » SourceMod >> CS:Source >> CSGO » Обсуждение » Не вижу ошибку кода, меню не открывается
  • Страница 1 из 1
  • 1
Поиск: