Skocz do zawartości
Doktorek292

granaty na arena 1 vs 1

Rekomendowane odpowiedzi

Witam mam pytanie jak rozwiazać problem z nie pojawianiem się granatów gdy mam vipa? Nie nie od hanysa generatora. + Dla czego nie wyświetla mi tagu przed nickiem na chacie?

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Jakbyś dał kod vipa to myślę że można byłoby ci pomóc.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Magicznej kuli nie mam inni chyba też, może dasz kod, logi i logi z konsoli sm plugins list

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

a ja mam herbatę z fusami i w nią spojrzę:

- Plugin VIP nadaje onRespawn więc gracz nie dostanie.

 Aby dostał należy zmodyfikować odpowiedni plik z multi1vs1 lub dodać timer do onRespawn.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Napisano (edytowane)
5 godzin temu, TerminatorXL napisał:

a ja mam herbatę z fusami i w nią spojrzę:

- Plugin VIP nadaje onRespawn więc gracz nie dostanie.

 Aby dostał należy zmodyfikować odpowiedni plik z multi1vs1 lub dodać timer do onRespawn.

Teraz powiedz jaka mam linijke edytowac lub dodac zeby można było dostawać granaty?

 

Macie jak komuś coś to pomoże.

 

#include <sourcemod>
#include <cstrike>
#include <sdktools>
#include <sdkhooks>
#include <scp>

#pragma semicolon 1
#pragma newdecls required

public Plugin myinfo =
{
	name = "[CS:GO] VIP",
	author = "xBonio & Avgariat",
	description = "Automatycznie wygenerowany VIP na ArenaSkilla.pl",
	version = "1.0",
	url = "http://arenaskilla.pl"
};

char tag[64] = "[VIP]";

public void OnPluginStart()
{
	HookEvent("player_spawn", PlayerSpawn);
}
int offsetHe;
int offsetSmoke;
public void OnMapStart()
{
	int entindex;

	entindex = CreateEntityByName("weapon_hegrenade");
	DispatchSpawn(entindex);
	offsetHe = GetEntProp(entindex, Prop_Send, "m_iPrimaryAmmoType");
	AcceptEntityInput(entindex, "Kill");

	entindex = CreateEntityByName("weapon_smokegrenade");
	DispatchSpawn(entindex);
	offsetSmoke = GetEntProp(entindex, Prop_Send, "m_iPrimaryAmmoType");
	AcceptEntityInput(entindex, "Kill");

}

public Action PlayerSpawn(Event event, const char[] name, bool dontBroadcast)
{
	int client = GetClientOfUserId(GetEventInt(event, "userid"));
	if(!IsPlayerVIP(client)) return;
	if(GetTeamScore(CS_TEAM_CT) + GetTeamScore(CS_TEAM_T) != 0)
		SetEntProp(client, Prop_Send, "m_ArmorValue", 100);
	if(GetTeamScore(CS_TEAM_CT) + GetTeamScore(CS_TEAM_T) != 0)
		SetEntProp(client, Prop_Send, "m_bHasHelmet", 1);
	SetEntityHealth(client, 110);
	for(int x = 0; x < 1; x++)
		if(GetEntProp(client, Prop_Send, "m_iAmmo", _, offsetHe) < 1) GivePlayerItem(client, "weapon_hegrenade");
	for(int x = 0; x < 1; x++)
		if(GetEntProp(client, Prop_Send, "m_iAmmo", _, offsetSmoke) < 1) GivePlayerItem(client, "weapon_smokegrenade");
}
public Action OnPlayerRunCmd(int client, int &buttons, int &impulse, float[3] vel, float[3] angles, int &weapon)
{
	if(!IsValidPlayer(client) || !IsPlayerAlive(client)) return;
	if(!IsPlayerVIP(client)) return;
	static int g_fLastButtons[MAXPLAYERS+1], g_fLastFlags[MAXPLAYERS+1], g_iJumps[MAXPLAYERS+1], fCurFlags, fCurButtons;
	fCurFlags = GetEntityFlags(client);
	fCurButtons = GetClientButtons(client);
	if (g_fLastFlags[client] & FL_ONGROUND && !(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 && 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 void OnClientPutInServer(int client)
{
	SDKHook(client, SDKHook_OnTakeDamage, FallDMG);
}
public void OnClientDisonnect(int client)
{
	SDKUnhook(client, SDKHook_OnTakeDamage, FallDMG);
}

public Action FallDMG(int client, int &attacker, int &inflictor, float &damage, int &damagetype)
{
	if(!IsValidPlayer(client) || !IsPlayerVIP(client)) return Plugin_Continue;
	if(damagetype & DMG_FALL)
		return Plugin_Handled;
	return Plugin_Continue;
}
public Action OnChatMessage(int &client, Handle recipients, char[] name, char[] message)
{
	if(!IsPlayerVIP(client)) return Plugin_Continue;

	Format(name, MAXLENGTH_NAME, " \x02%s \x03%s\x01", tag, name);
	return Plugin_Changed;
}

public void OnClientPostAdminCheck(int client)
{
	if(IsPlayerVIP(client))
	{
			
		PrintToChatAll(" \x02%s \x03%N\x01 Wbija na serwer!\x01", tag, client);
	}
}

stock bool IsValidPlayer(int client)
{
	if(client >= 1 && client <= MaxClients && IsClientInGame(client) && !IsFakeClient(client) && !IsClientSourceTV(client))
		return true;
	return false;
}

stock bool IsPlayerVIP(int client)
{
	if(GetUserFlagBits(client) & ADMFLAG_RESERVATION && !(GetUserFlagBits(client) & ADMFLAG_ROOT))
		return true;
	return false;
}

Magicznej kuli nie mam inni chyba też, może dasz kod, logi i logi z konsoli sm plugins list

 

Ale wiesz że drobne problemu które nie dają typowych granatów gdy wszystko chodzi i jest ok to nie pokazuje granatów?

 

 

Edytowane przez Doktorek292

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Tutaj bym proponował zrobić timer, lecz ja np. używam wersji edytowanej multi1v1

public Action PlayerSpawn(Event event, const char[] name, bool dontBroadcast)
{
//TAJMER HERE a to niżej po wykonaniu timera proponuje ustawic 0.5
	int client = GetClientOfUserId(GetEventInt(event, "userid"));
	if(!IsPlayerVIP(client)) return;
	if(GetTeamScore(CS_TEAM_CT) + GetTeamScore(CS_TEAM_T) != 0)
		SetEntProp(client, Prop_Send, "m_ArmorValue", 100);
	if(GetTeamScore(CS_TEAM_CT) + GetTeamScore(CS_TEAM_T) != 0)
		SetEntProp(client, Prop_Send, "m_bHasHelmet", 1);
	SetEntityHealth(client, 110);
	for(int x = 0; x < 1; x++)
		if(GetEntProp(client, Prop_Send, "m_iAmmo", _, offsetHe) < 1) GivePlayerItem(client, "weapon_hegrenade");
	for(int x = 0; x < 1; x++)
		if(GetEntProp(client, Prop_Send, "m_iAmmo", _, offsetSmoke) < 1) GivePlayerItem(client, "weapon_smokegrenade");
}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Napisano (edytowane)
2 godziny temu, TerminatorXL napisał:

Tutaj bym proponował zrobić timer, lecz ja np. używam wersji edytowanej multi1v1

public Action PlayerSpawn(Event event, const char[] name, bool dontBroadcast)
{
//TAJMER HERE a to niżej po wykonaniu timera proponuje ustawic 0.5
	int client = GetClientOfUserId(GetEventInt(event, "userid"));
	if(!IsPlayerVIP(client)) return;
	if(GetTeamScore(CS_TEAM_CT) + GetTeamScore(CS_TEAM_T) != 0)
		SetEntProp(client, Prop_Send, "m_ArmorValue", 100);
	if(GetTeamScore(CS_TEAM_CT) + GetTeamScore(CS_TEAM_T) != 0)
		SetEntProp(client, Prop_Send, "m_bHasHelmet", 1);
	SetEntityHealth(client, 110);
	for(int x = 0; x < 1; x++)
		if(GetEntProp(client, Prop_Send, "m_iAmmo", _, offsetHe) < 1) GivePlayerItem(client, "weapon_hegrenade");
	for(int x = 0; x < 1; x++)
		if(GetEntProp(client, Prop_Send, "m_iAmmo", _, offsetSmoke) < 1) GivePlayerItem(client, "weapon_smokegrenade");
}

 

To już nie jest gotowy skrypt który wystarczy wrzucić do sp arena1vs1 tak?

 

A i powiedz mi jeszcze jak możesz gdzie go dokładnie mam wsadzić i co zrobić?

Edytowane przez Doktorek292

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

yyy  ale to jest co zrobić w pluginie na vipa, jeśli chcesz edytować plugin na multi1v1 to musisz wsadzić do multi1v1/roundtypes.sp

public void RifleHandler(int client) {

i tam musisz dodać 

if(GetUserFlagBits(client)&(1<<TWOJA_FLAGA))
{

GivePlayerItem(client, "weapon_hegrenade");

}

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

  • Podobna zawartość

    • Przez thegreenboy
      Witam.
       
      Gdzie wgrać na serwerze postawionym na linux pliki z Multi Arena 1v1 żeby to wgl się włączyło? Ponieważ wgralem do Addons->SourceMod wszystkie pliki i nic nie działa. Ma ktoś może jakieś rozwiązanie?
       
      Pozdrawiam,
    • Przez query96
      Opis: Sprzedam serwer Arena 1vs1 i wpln na gosetti    Arena 1vs1 slotów 19 hostplay GT: https://www.gametracker.com/server_info/193.70.125.209:27062/ Cena: Do uzgodnienia Płatność:  Przelew Kontakt:  Steam https://steamcommunity.com/id/outsider1996/ / Forum Allegro (nie wymagane):  Przez allegro (kupujący ponosi połowę kosztów wystawienia) Zdjęcia:   https://zapodaj.net/6f8b977aa3e60.png.html ---> WPLN https://zapodaj.net/cfee686804eaa.png.html ---> Arena
    • Przez Deather
      InfinityCore.pl to społeczność poszukująca nowych wrażeń w grach, które z biegiem czasu stały się monotonne.
      Tworząc w pełni autorskie modyfikacje, dostarczamy nowe, świeże spojrzenie na daną produkcję.
       

      DLACZEGO MY? 
      Tylko u nas znajdziecie rozbudowane modyfikacje serwerowe takie jak PokeMod w CS:GO. 
       

      NASZE SERWERY:
       
      [PL] S1:
      IP: 145.239.133.23:27015
      Ilość slotów: 26
      Mod: Pokemod
       

       
       
      [PL] S2:
      IP: 145.239.133.23:27016
      Ilość slotów: 26
      Mod: Pokemod
       

       
      [PL] S3:
      IP: 145.239.133.23:27017
      Ilość slotów: 26
      Mod: Pokemod

       
      [PL] S4:
      IP: 145.239.133.23:27018
      Ilość slotów: 32
      Mod: Arena 1v1


      [PL] S5:
      IP: 193.33.177.210:27125
      Ilość slotów: 20
      Mod: Only Mirage
       

       

      [PL] S6:
      IP: 145.239.18.200:28060
      Ilość slotów: 21
      Mod: Jailbreak
       

       
       
      [PL] Team Speak 3:
      IP: GGspeak.pl
      Ilość slotów: 256



      POKEMOD:
       
      Pokemod to modyfikacja do serwerów CS:GO.
      Wprowadza wszystkim dobrze znane pokemony.
      Rozszerzenie to obecnie posiada trzy generacje zawierające:
      - około 300 pokemonów
      - 60 umiejętności pasywnych
      - 140 unikalnych umiejętności aktywnych
      - 65 unikalnych przedmiotów
       
       
      Zapraszamy!
    • Przez Maikovsky
      Czym się wyróżniamy?
       
       Oryginalny silnik forum IPS (legalna licencja).
       Własny serwer dedykowany (PL - Warszawa - OVH).
       Doświadczona administracja.
       Unikatowe pluginy na serwerach.
       100% czasu działania naszych serwerów.
       Własny system archiwum GOTV, SklepSMS, SourceBans, GameME, GameTracker, VIP.
       Profesjonalna ochrona Anty-DDoS.
       
      Informacje o serwerze:
       
        Nazwa serwera: [PL] TerytoriumK2.PL [ARENA 1v1][128TR][SKINY/KOSY/RĘKAWICE]
        Rodzaj serwera: ARENA 1v1
        IP: 137.74.0.202:27019
        Ilość slotów: 25
       

       
      Przydatne linki:
       
       Forum - http://terytoriumk2.pl/
       Sklep -  http://sklep.terytoriumk2.pl/
       Facebook -  https://www.facebook.com/terytoriumk2/
       Steam -  https://steamcommunity.com/groups/terytoriumk2/
       GOTV -  http://gotv.terytoriumk2.pl/
       Statystyki -  http://terytoriumk2.gameme.com/
       Głosuj na nasz serwer! -  https://gosetti.pl/serwery/137.74.0.202:27019
×