public PlVers:__version =
{
version = 5,
filevers = "1.10.0.6484",
date = "06/16/2020",
time = "02:03:09"
};
new Float:NULL_VECTOR[3];
new String:NULL_STRING[16];
public Extension:__ext_core =
{
name = "Core",
file = "core",
autoload = 0,
required = 0,
};
new MaxClients;
public Extension:__ext_sdktools =
{
name = "SDKTools",
file = "sdktools.ext",
autoload = 1,
required = 1,
};
public Extension:__ext_cprefs =
{
name = "Client Preferences",
file = "clientprefs.ext",
autoload = 1,
required = 1,
};
public Extension:__ext_cstrike =
{
name = "cstrike",
file = "games/game.cstrike.ext",
autoload = 0,
required = 1,
};
public SharedPlugin:__pl_levelsranks =
{
name = "levelsranks",
file = "levelsranks.smx",
required = 1,
};
new ConVar:cv_ServerDNS;
new ConVar:cv_ShowAds;
new ConVar:cv_xpPerRound;
public Plugin:myinfo =
{
name = "GoldMember (DNS Benefits)",
description = "Benefits for having DNS in STEAM Name",
author = "xSLOW + AlQaida",
version = "1.3",
url = "https://steamcommunity.com/id/imslow2k17/"
};
MoveType:GetEntityMoveType(entity)
{
static bool:gotconfig;
static String:datamap[128];
if (!gotconfig)
{
new GameData:gc = GameData.GameData("core.games");
new bool:exists = GameData.GetKeyValue(gc, "m_MoveType", datamap, 32);
CloseHandle(gc);
gc = 0;
if (!exists)
{
strcopy(datamap, 32, "m_MoveType");
}
gotconfig = true;
}
return GetEntProp(entity, 1, datamap, 4, 0);
}
bool:HasDNS(client)
{
new String
layerName[128];
new String:buffer[128];
ConVar.GetString(cv_ServerDNS, buffer, 32);
GetClientName(client, PlayerName, 32);
if (StrContains(PlayerName, buffer, false) > -1)
{
return 1;
}
return 0;
}
bool:IsClientValid(client)
{
new var1;
if (client >= 1 && client <= MaxClients && IsClientConnected(client) && IsClientInGame(client) && IsFakeClient(client))
{
return 1;
}
return 0;
}
public Action:OnPlayerRunCmd(client, &buttons, &impulse, Float:vel[3], Float:angles[3], &weapon, &subtype, &cmdnum, &tickcount, &seed, mouse[2])
{
new var1;
if (IsClientValid(client) && HasDNS(client) == 1 && buttons & 2 && GetEntityFlags(client) & 1 && GetEntityMoveType(client) & 9 && GetEntProp(client, 1, "m_nWaterLevel", 4, 0) <= 1)
{
buttons = buttons & -3;
}
return 0;
}
public void:OnPluginStart()
{
cv_ServerDNS = CreateConVar("sm_goldmember_serverdns", "nume.ro", "Server's DNS to get GoldMember", 256, false, 0.0, false, 0.0);
cv_ShowAds = CreateConVar("sm_goldmember_showads", "90.0", "Show messages about goldmember? If yes, enter a float value of how often should these ads be shown, either enter 0.0 to disable this option", 256, false, 0.0, false, 0.0);
cv_xpPerRound = CreateConVar("sm_goldmember_xpperround", "1", "How much xp to give to goldmembers", 256, false, 0.0, false, 0.0);
if (ConVar.FloatValue.get(cv_ShowAds) > 0.0)
{
CreateTimer(ConVar.FloatValue.get(cv_ShowAds) , 11, 0, 1);
}
AutoExecConfig(true, "goldmember", "sourcemod");
return 0;
}
public Action:Timer_Ads(Handle:timer, any:client)
{
new String
NSbuffer[128];
ConVar.GetString(cv_ServerDNS, DNSbuffer, 32);
new i = 1;
while (i <= MaxClients)
{
new var1;
if (IsClientValid(i) && HasDNS(i))
{
PrintToChat(i, "\x01\x0B\x01 \x05» \x08Adauga \x03'%s' \x08la numele tau pentru beneficii \x08(\x10bhop \x08+ \x10extra xp\x0
", DNSbuffer);
}
else
{
new var2;
if (IsClientValid(i) && HasDNS(i) == 1)
{
new xp = GetConVarInt(cv_xpPerRound);
LR_ChangeClientValue(i, xp);
PrintToChat(i, "\x01\x0B\x01 \x05» \x08Ai primit extra XP din partea tag-ului [\x07 nume.ro\x08]");
}
}
i++;
}
return 0;
}
public void:__ext_core_SetNTVOptional()
{
MarkNativeAsOptional("GetFeatureStatus");
MarkNativeAsOptional("RequireFeature");
MarkNativeAsOptional("AddCommandListener");
MarkNativeAsOptional("RemoveCommandListener") ;
MarkNativeAsOptional("BfWriteBool");
MarkNativeAsOptional("BfWriteByte");
MarkNativeAsOptional("BfWriteChar");
MarkNativeAsOptional("BfWriteShort");
MarkNativeAsOptional("BfWriteWord");
MarkNativeAsOptional("BfWriteNum");
MarkNativeAsOptional("BfWriteFloat");
MarkNativeAsOptional("BfWriteString");
MarkNativeAsOptional("BfWriteEntity");
MarkNativeAsOptional("BfWriteAngle");
MarkNativeAsOptional("BfWriteCoord");
MarkNativeAsOptional("BfWriteVecCoord");
MarkNativeAsOptional("BfWriteVecNormal");
MarkNativeAsOptional("BfWriteAngles");
MarkNativeAsOptional("BfReadBool");
MarkNativeAsOptional("BfReadByte");
MarkNativeAsOptional("BfReadChar");
MarkNativeAsOptional("BfReadShort");
MarkNativeAsOptional("BfReadWord");
MarkNativeAsOptional("BfReadNum");
MarkNativeAsOptional("BfReadFloat");
MarkNativeAsOptional("BfReadString");
MarkNativeAsOptional("BfReadEntity");
MarkNativeAsOptional("BfReadAngle");
MarkNativeAsOptional("BfReadCoord");
MarkNativeAsOptional("BfReadVecCoord");
MarkNativeAsOptional("BfReadVecNormal");
MarkNativeAsOptional("BfReadAngles");
MarkNativeAsOptional("BfGetNumBytesLeft");
MarkNativeAsOptional("BfWrite.WriteBool");
MarkNativeAsOptional("BfWrite.WriteByte");
MarkNativeAsOptional("BfWrite.WriteChar");
MarkNativeAsOptional("BfWrite.WriteShort");
MarkNativeAsOptional("BfWrite.WriteWord");
MarkNativeAsOptional("BfWrite.WriteNum");
MarkNativeAsOptional("BfWrite.WriteFloat");
MarkNativeAsOptional("BfWrite.WriteString");
MarkNativeAsOptional("BfWrite.WriteEntity");
MarkNativeAsOptional("BfWrite.WriteAngle");
MarkNativeAsOptional("BfWrite.WriteCoord");
MarkNativeAsOptional("BfWrite.WriteVecCoord") ;
MarkNativeAsOptional("BfWrite.WriteVecNormal" );
MarkNativeAsOptional("BfWrite.WriteAngles");
MarkNativeAsOptional("BfRead.ReadBool");
MarkNativeAsOptional("BfRead.ReadByte");
MarkNativeAsOptional("BfRead.ReadChar");
MarkNativeAsOptional("BfRead.ReadShort");
MarkNativeAsOptional("BfRead.ReadWord");
MarkNativeAsOptional("BfRead.ReadNum");
MarkNativeAsOptional("BfRead.ReadFloat");
MarkNativeAsOptional("BfRead.ReadString");
MarkNativeAsOptional("BfRead.ReadEntity");
MarkNativeAsOptional("BfRead.ReadAngle");
MarkNativeAsOptional("BfRead.ReadCoord");
MarkNativeAsOptional("BfRead.ReadVecCoord");
MarkNativeAsOptional("BfRead.ReadVecNormal");
MarkNativeAsOptional("BfRead.ReadAngles");
MarkNativeAsOptional("BfRead.BytesLeft.get");
MarkNativeAsOptional("PbReadInt");
MarkNativeAsOptional("PbReadFloat");
MarkNativeAsOptional("PbReadBool");
MarkNativeAsOptional("PbReadString");
MarkNativeAsOptional("PbReadColor");
MarkNativeAsOptional("PbReadAngle");
MarkNativeAsOptional("PbReadVector");
MarkNativeAsOptional("PbReadVector2D");
MarkNativeAsOptional("PbGetRepeatedFieldCount ");
MarkNativeAsOptional("PbSetInt");
MarkNativeAsOptional("PbSetFloat");
MarkNativeAsOptional("PbSetBool");
MarkNativeAsOptional("PbSetString");
MarkNativeAsOptional("PbSetColor");
MarkNativeAsOptional("PbSetAngle");
MarkNativeAsOptional("PbSetVector");
MarkNativeAsOptional("PbSetVector2D");
MarkNativeAsOptional("PbAddInt");
MarkNativeAsOptional("PbAddFloat");
MarkNativeAsOptional("PbAddBool");
MarkNativeAsOptional("PbAddString");
MarkNativeAsOptional("PbAddColor");
MarkNativeAsOptional("PbAddAngle");
MarkNativeAsOptional("PbAddVector");
MarkNativeAsOptional("PbAddVector2D");
MarkNativeAsOptional("PbRemoveRepeatedFieldVa lue");
MarkNativeAsOptional("PbReadMessage");
MarkNativeAsOptional("PbReadRepeatedMessage") ;
MarkNativeAsOptional("PbAddMessage");
MarkNativeAsOptional("Protobuf.ReadInt");
MarkNativeAsOptional("Protobuf.ReadInt64");
MarkNativeAsOptional("Protobuf.ReadFloat");
MarkNativeAsOptional("Protobuf.ReadBool");
MarkNativeAsOptional("Protobuf.ReadString");
MarkNativeAsOptional("Protobuf.ReadColor");
MarkNativeAsOptional("Protobuf.ReadAngle");
MarkNativeAsOptional("Protobuf.ReadVector");
MarkNativeAsOptional("Protobuf.ReadVector2D") ;
MarkNativeAsOptional("Protobuf.GetRepeatedFie ldCount");
MarkNativeAsOptional("Protobuf.SetInt");
MarkNativeAsOptional("Protobuf.SetInt64");
MarkNativeAsOptional("Protobuf.SetFloat");
MarkNativeAsOptional("Protobuf.SetBool");
MarkNativeAsOptional("Protobuf.SetString");
MarkNativeAsOptional("Protobuf.SetColor");
MarkNativeAsOptional("Protobuf.SetAngle");
MarkNativeAsOptional("Protobuf.SetVector");
MarkNativeAsOptional("Protobuf.SetVector2D");
MarkNativeAsOptional("Protobuf.AddInt");
MarkNativeAsOptional("Protobuf.AddInt64");
MarkNativeAsOptional("Protobuf.AddFloat");
MarkNativeAsOptional("Protobuf.AddBool");
MarkNativeAsOptional("Protobuf.AddString");
MarkNativeAsOptional("Protobuf.AddColor");
MarkNativeAsOptional("Protobuf.AddAngle");
MarkNativeAsOptional("Protobuf.AddVector");
MarkNativeAsOptional("Protobuf.AddVector2D");
MarkNativeAsOptional("Protobuf.RemoveRepeated FieldValue");
MarkNativeAsOptional("Protobuf.ReadMessage");
MarkNativeAsOptional("Protobuf.ReadRepeatedMe ssage");
MarkNativeAsOptional("Protobuf.AddMessage");
VerifyCoreVersion();
return 0;
}