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
 

Wolen - zdjęcie

Wolen

Rejestracja: 15.07.2013
Aktualnie: Nieaktywny
Poza forum Ostatnio: 05.01.2015 22:40
-----

Moje tematy

Eksportowanie textur z modeli z CS:GO

20.08.2014 11:46

Witam,

mam potrzebę uzyskania textur (najlepiej w png, jpg) z broni z gry Counter-Strike: Global Offensive. Dokładnie chciałbym textury P90, M4A4 oraz AWP wszystkie asiimov. Istnieje jakiś sposób, aby je dostać?

Wiele plików działających na zasadzie users.ini

07.07.2014 14:42

Witam!

Czy istnieje możliwość stworzenia np. pliku premki.ini admini.ini itd., z których będą na początku każdej mapy wczytywane wpisy dokładnie tak samo jak z users.ini? Nie wiem czy dobry dział, ale nie bardzo wiedziałem gdzie to napisać :P

Co myślicie o stworzeniu polskiej dokumentacji SourceMod API?

14.09.2013 11:03

Witam!

 

Piszę z propozycją stworzenia polskiej dokumentacji SourceMod API. Wyglądałoby to podobnie do dokumentacji AMXX, lecz SourceModowe. Na pewno znalazłoby się kilka osób, które chętnie by pomagały przy spolszczaniu (w tym ja ^^) angielskiego docs. Co wy myślicie o takim pomyśle :P?

 

 

ConVary - SourceMod'owe odpowiedniki cvarów

22.08.2013 07:39

Wprowadzenie
-------------------------------------------------------------------------------------------------------------------------------------------------------
ConVary są dostępne poprzez uchwyty (handles). Są dwa sposoby, w jaki możemy uzyskać handle ConVar'a. Jeśli tworzysz ConVar, który już istnieje zostanie automatycznie wykorzystany ten, który był pierwszy. 
Uwaga: Uchwyty ConVarów są unikalne dla danego ConVara i nie ma potrzeby ich zwalniania, bądź usuwania.
 
 
 
 
Znajdowanie ConVarów
-------------------------------------------------------------------------------------------------------------------------------------------------------
Znajdowanie ConVarów jest bardzo proste. Na przykład, powiedzmy, że chcemy użyć mp_startmoney z Counter-Strike: Source. 

new Handle:g_hStartMoney
 
public OnPluginStart()
{
	g_hStartMoney = FindConVar("mp_startmoney")
}

Uwaga: FindConVar() zwróci INVALID_HANDLE jeśli ConVar nie zostanie znaleziony. Weź to pod uwagę, jeśli będziesz próbował czytać ConVar'y z innych pluginów.
 
 
 
Tworzenie ConVarów
-------------------------------------------------------------------------------------------------------------------------------------------------------
Prosty ConVar zawiera dwa parametry, nazwę oraz domyślną wartość. W każdym razie, dobrym pomysłem jest dodanie opisu ;).

new Handle:g_hEnabled
 
public OnPluginStart()
{
	g_hEnabled = CreateConVar("myplugin_enabled", "1", "Sets whether my plugin is enabled")
}

Możesz także określić ograniczone wartości. Na przykład, stwórzmy cvar o nazwie myplugin_ratio, którego wartość cvar'u nie może wynosić więcej niż 1.0 lub mniej niż 0.1 :).

new Handle:g_hEnabled
 
public OnPluginStart()
{
	g_hEnabled = CreateConVar("myplugin_ratio",
			"0.6",
			"Sets a vote ratio",
			_,	/* Flags will be discussed later */
			true,	/* Has a minimum */
			0.1,
			true,	/* Has a maximum */
			1.0)
}

Domyślna wartość może być dowolnego typu danych i nie ogranicza ona przyszłych typów, które mogą być stosowane. Niemniej jednak, minimalne i maksymalne ograniczenia należy zawsze interpretować jako wartości typu float. Jeśli tworzysz ConVar, który już istnieje, otrzymasz do niego uchwyt. Co więcej, sam handle będzie identyczny. Opis, domyślna wartość lub ograniczenia nie zostaną zmienione.

 

 

 

Używanie/Zmienianie ConVarów
-------------------------------------------------------------------------------------------------------------------------------------------------------

Zarządzanie ConVar'ami jest bardzo proste. Na przykład, powiedzmy, że chcemy zmienić mp_startmoney, ale zachowamy starą wartość i przywrócimy ją później. Ponowne wykorzystanie naszego kodu z FindConVar.

new g_oldmoney
 
SetStartMoney(newmoney)
{
	g_oldmoney = GetConVarInt(g_hStartMoney)
	SetConVarInt(g_hStartMoney, newmoney)
}
 
RestoreStartMoney()
{
	SetConVarInt(g_hStartMoney, g_oldmoney)
}

Choć istnieją różne funkcji dla typów wartości (float, string, et cetera), wewnętrzne dane są zawsze zapisywane w ten sam sposób. Na przykład ten kod działa:

public GetStartMoney()
{
	decl String:buffer[128]
 
	GetConVarString(g_hStartMoney, buffer, sizeof(buffer))
 
	return StringToInt(buffer)
} 

Choć mp_startmoney jest liczbą całkowitą, to może jeszcze zostać przywrócona jako ciąg.

 

 

 

Flagi
-------------------------------------------------------------------------------------------------------------------------------------------------------

ConVary mogą mieć liczbę flag do zmiany ich zachowania. Kilka ważnych flag to:

  • FCVAR_PROTECTED - Poufne informacje (nie powinny być narażone na klientów oraz logi).
  • FCVAR_NOTIFY - Klienci są powiadamiani o zmianach.
  • FCVAR_CHEAT - Może zostać tylko użyte jeśli sv_cheat wynosi 1.
  • FCVAR_REPLICATED - Ustawienia są przymusowe dla klientów <może tutaj być błąd w tłumaczeniu> (oryginał: Setting is forced to clients.)
UnsetCheatVar(Handle:hndl)
{
	new flags = GetConVarFlags(hndl)
	flags &= ~FCVAR_CHEAT
	SetConVarFlags(hndl, flags)
}
 
SetCheatVar(Handle:hndl)
{
	new flags = GetConVarFlags(hndl)
	flags |= FCVAR_CHEAT
	SetConVarFlags(hndl, flags)
}

W oryginale była jeszcze wzmianka o zmianie callback'ów, lecz postanowił, że skoro nie do końca to pojmuję nie będę tego tykał ^^, a więc to będzie na tyle :D.

 

Źródło: http://wiki.alliedmo...eMod_Scripting)

 

Simple Spawn NoBlock

21.08.2013 08:22

opis

Po rozpoczęciu rundy plugin daje możliwość przechodzenia przez członków swojej drużyny. Czas przenikania jest regulowany cvar'em.

 

 

 

cvary

// Czy plugin jest włączony
// -
// Domyślnie: "1.0"
// Minimalnie: "0.000000"
// Maksymalnie: "1.000000"
sm_snb "1.0"

// Czy FF ma być dostępne podczas spawn'u? Jeśli masz wyłączone ff na serwerze ustaw 0
// -
// Domyślnie: "1.0"
// Minimalnie: "0.000000"
// Maksymalnie: "1.000000"
sm_snb_ff "0"

// Czas spawn noblock'a (w sekundach).
// -
// Domyślnie: "10.0"
// Minimalnie: "1.000000"
sm_snb_time "10.0"