Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
Naprawienie

Dodanie preferencji MultiArena1v1

naprawienie arena onlyhs

  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
1 odpowiedź w tym temacie

#1 bocian22xd

    Nowy

  • Nowy

Reputacja: 0
Nowy

  • Postów:1
  • Imię:Bocian
  • Lokalizacja:Polska
Offline

Napisano 19.01.2015 11:27

Używam paczki MultiArena1v1 od splewisa

 

Potrzebuje do tego stworzyć jeszcze opcje w preferencjach.

 

Jest tam możliwość dostania flesza w rundzie jeśli obie strony mają to włączone. 

 

Potrzebuje stworzyć plugin który będzie dodawać możliwość wyboru only hs na tej samej zasadzie.

 

Kolega napisał mi plugin lecz przy kompilacji wywala błędy.

Próbowałem kompilować na sm 1.6 i 1.7.

 

Aktualnie plugin wygląda tak:

#include <sourcemod>
#include <smlib>
#include "include/multi1v1.inc"
#include "multi1v1/version.sp"

#pragma semicolon 1
new bool:onlyhs[33];
public Plugin:myinfo = {
	name = "CS:GO Multi1v1: hs round addon",
	author = "splewis",
	description = "Adds an unranked hs round-type",
	version = PLUGIN_VERSION,
	url = "https://github.com/splewis/csgo-multi-1v1"
};

public OnPluginStart()
{
	HookEvent("round_prestart", rundyl);
	HookEvent("player_hurt", EventPlayerHurt, EventHookMode_Pre);
}

public void Multi1v1_OnRoundTypesAdded() {
	Multi1v1_AddRoundType("jakishs", "jakishs", HSHandler, Multi1v1_NullChoiceMenu, true, true);
}

public void HSHandler(int client) {
	onlyhs[client]=true;
}

public Action:rundyl(Handle:event, const String:name[], bool:dontBroadcast)
{
	new client = GetClientOfUserId(GetEventInt(event, "userid"));
	onlyhs[client]=false;
}

public Action:EventPlayerHurt(Handle:event, const String:name[],bool:dontBroadcast)
{

	new hitgroup = GetEventInt(event, "hitgroup");
	new client = GetClientOfUserId(GetEventInt(event, "userid"));
	new attacker = GetClientOfUserId(GetEventInt(event, "attacker"));
	new dhealth = GetEventInt(event, "dmg_health");
	new darmor = GetEventInt(event, "dmg_armor");
	new health = GetEventInt(event, "health");
	new armor = GetEventInt(event, "armor");
	
	if(onlyhs[client])
	{
		if (attacker != victim && victim != 0 && attacker != 0)
		{
			if (dhealth > 0)
			{
				SetEntData(victim, g_iHealth, (health + dhealth), 4, true);
			}
			if (darmor > 0)
			{
				SetEntData(victim, g_Armor, (armor + darmor), 4, true);
			}
		}
	}
	return Plugin_Continue;
}

A tak wyglądają błędy:

hs.sp(48) : error 017: undefined symbol "victim"
hs.sp(52) : error 017: undefined symbol "victim"
hs.sp(56) : error 017: undefined symbol "victim"
hs.sp(38) : warning 204: symbol is assigned a value that is never used: "hitgroup"

Nie wiem czy moglibyście mi pomóc jakoś to naprawić lub napisać nowy plugin, ale bardzo o to proszę.

 

Pozdrawiam, Bocian


  • +
  • -
  • 0

#2 Koraks

    Życzliwy

  • Użytkownik

Reputacja: 4
Nowy

  • Postów:37
  • Imię:Krzysztof
  • Lokalizacja:Kraków
Offline

Napisano 12.10.2015 16:40

Lepiej będzie, jak skorzystać z funkcji SDKHooks :)

Po drugie nigdzie nie inicjujesz i deklarujesz zmiennej victim :)

@EDIT

Sorry za odkop, przeglądałem dział http://amxx.pl/forum/225-pluginy/i wybrałem jeden z pierwszych tematów :)


Użytkownik Koraks edytował ten post 12.10.2015 16:41

  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: naprawienie, arena, onlyhs

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych