Cześć, z góry wspomnę, że jest to przerobiony plugin z generatora myg*.**. W pluginie nie działa prefix na czacie (display'uje normalny czat dla CT, T), wiadomość przy wejściu. Jest w stanie ktoś to naprawić?
#include <sourcemod>
#include <sdktools>
#include <cstrike>
#include <sdkhooks>
#include <scp>
int g_fLastButtons[MAXPLAYERS+1];
int g_fLastFlags[MAXPLAYERS+1];
int g_iJumps[MAXPLAYERS+1];
public Plugin:myinfo =
{
name = "VIP Generator",
author = "mastah7991",
description = "Automatycznie wygenerowany VIP",
version = "1.0",
url = "MYGO.PL"
}
public OnPluginStart()
{
HookEvent("player_spawn", Event_PlayerSpawn);
HookEvent("player_death", Event_PlayerDeath);
}
public OnClientPutInServer(client)
{
if (IsValidPlayer(client) && (GetUserFlagBits(client) & ADMFLAG_CUSTOM1))
{
char name[32];
GetClientName(client,name,31);
PrintToChatAll("{green}c1.BlackSquad.eu{default}: {lightgreen}Gracz VIP{default} %s {lightgreen}wszedl na serwer",name);
}
}
public Action:Event_PlayerSpawn(Handle:event, const String:name[], bool:dontBroadcast)
{
int client = GetClientOfUserId(GetEventInt(event, "userid"));
if (IsValidPlayer(client) && (GetUserFlagBits(client) & ADMFLAG_CUSTOM1))
{
SetEntityHealth(client, GetEntProp(client, Prop_Send, "m_iHealth")+20);
SetEntProp(client, Prop_Send, "m_iAccount", GetEntProp(client, Prop_Send, "m_iAccount")+250);
SetEntityGravity(client, 0.85);
int iWeapon = GetPlayerWeaponSlot(client, 1);
if (iWeapon > 0) {
int iWeaponIndex = GetEntProp(iWeapon, Prop_Send, "m_iItemDefinitionIndex");
if (iWeaponIndex == 4 || iWeaponIndex == 32 || iWeaponIndex == 61) {
RemovePlayerItem(client, iWeapon);
AcceptEntityInput(iWeapon, "Kill");
GivePlayerItem(client, "weapon_deagle");
}
}
}
}
public Action:Event_PlayerDeath(Handle:event, const String:name[], bool:dontBroadcast)
{
int client = GetClientOfUserId(GetEventInt(event, "userid"));
bool headshot = GetEventBool(event, "headshot");
if (IsValidPlayer(client) && (GetUserFlagBits(client) & ADMFLAG_CUSTOM1))
{
SetEntityHealth(client, GetEntProp(client, Prop_Send, "m_iHealth")+5);
if(headshot)
SetEntityHealth(client, GetEntProp(client, Prop_Send, "m_iHealth")+15);
if(GetEntProp(client, Prop_Send, "m_iHealth")>180)
SetEntityHealth(client, 180);
SetEntProp(client, Prop_Send, "m_iAccount", GetEntProp(client, Prop_Send, "m_iAccount")+100);
if(headshot)
SetEntProp(client, Prop_Send, "m_iAccount", GetEntProp(client, Prop_Send, "m_iAccount")+300);
}
}
public Action OnPlayerRunCmd(int client, int &buttons, int &impulse, float vel[3], float angles[3], int &weapon)
{
if (IsValidPlayer(client) && (GetUserFlagBits(client) & ADMFLAG_CUSTOM1))
{
int fCurFlags = GetEntityFlags(client);
int fCurButtons = GetClientButtons(client);
if (g_fLastFlags[client] & FL_ONGROUND)
{
if (!(fCurFlags & FL_ONGROUND) &&!(g_fLastButtons[client] & IN_JUMP) && fCurButtons & IN_JUMP)
{
g_iJumps[client]++;
}
}
else if (fCurFlags & FL_ONGROUND)
{
g_iJumps[client] = 0;
}
else if (!(g_fLastButtons[client] & IN_JUMP) && fCurButtons & IN_JUMP)
{
if ( 1 <= g_iJumps[client] <= 1)
{
g_iJumps[client]++;
float vVel[3];
GetEntPropVector(client, Prop_Data, "m_vecVelocity", vVel);
vVel[2] = 250.0;
TeleportEntity(client, NULL_VECTOR, NULL_VECTOR, vVel);
}
}
g_fLastFlags[client] = fCurFlags;
g_fLastButtons[client] = fCurButtons;
}
}
public Action:OnChatMessage(&author, Handle:recipients, String:name[], String:message[])
{
if (IsValidPlayer(author))
{
if(GetUserFlagBits(author) & ADMFLAG_CUSTOM1 || CheckCommandAccess(author, "sm_komendaktoraniemusiistniec", ADMFLAG_CUSTOM1))
{
Format(name, MAXLENGTH_NAME, "\x01[\x06C1 - VIP\x01]\x04 %s",name);
return Plugin_Changed;
}
return Plugin_Continue;
}
return Plugin_Continue;
}
stock bool IsValidPlayer(client)
{
if(client >= 1 && client <= MaxClients && IsClientConnected(client) && !IsFakeClient(client) && IsClientInGame(client) )
return true;
return false;
}
Użytkownik KamiiQ edytował ten post 17.06.2017 21:47


Dodatki SourceMod












