OciXCrom's Rank System [XP|Levels|Ranks]

Одобрените от нас плъгини. Моля, докладвайте ако забележите бъг с някой от плъгините в този раздел.
Публикувай отговор
Аватар
impossible
Извън линия
Потребител
Потребител
Мнения: 410
Регистриран на: 15 Юни 2019, 12:41
Се отблагодари: 23 пъти
Получена благодарност: 35 пъти
Обратна връзка:

OciXCrom's Rank System [XP|Levels|Ranks]

Мнение от impossible » 09 Окт 2020, 00:35

hudgenerator/
-1.00, 0.00
Изображение

Аватар
petyrkpetrov
Извън линия
Потребител
Потребител
Мнения: 41
Регистриран на: 08 Окт 2016, 18:53
Се отблагодари: 6 пъти

OciXCrom's Rank System [XP|Levels|Ranks]

Мнение от petyrkpetrov » 03 Яну 2021, 03:42

Здравейте, може ли да се добави опция БОНУС ХР при оцеляване като Т, става въпрос за ХНС сървър.
MANSION - HNS :
173.199.83.180:27015

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 6945
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 116 пъти
Получена благодарност: 1162 пъти
Обратна връзка:

OciXCrom's Rank System [XP|Levels|Ranks]

Мнение от OciXCrom » 03 Яну 2021, 14:19

Модът има ли някакъв .inc файл с подобна функция или просто трябва да даде ХР на всички живи терористи в края на рунда?

Аватар
petyrkpetrov
Извън линия
Потребител
Потребител
Мнения: 41
Регистриран на: 08 Окт 2016, 18:53
Се отблагодари: 6 пъти

OciXCrom's Rank System [XP|Levels|Ranks]

Мнение от petyrkpetrov » 04 Яну 2021, 21:18

OciXCrom написа:
03 Яну 2021, 14:19
Модът има ли някакъв .inc файл с подобна функция или просто трябва да даде ХР на всички живи терористи в края на рунда?
Имало го е като команда: team_win_t = 15
Ако може само да се добави да излиза като съобщение в чата, пример:
[prefix] You win 15 XP for winning this round.
MANSION - HNS :
173.199.83.180:27015

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 6945
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 116 пъти
Получена благодарност: 1162 пъти
Обратна връзка:

OciXCrom's Rank System [XP|Levels|Ranks]

Мнение от OciXCrom » 10 Яну 2021, 16:43

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <cromchat>
#include <crxranks>

#if !defined MAX_PLAYERS
const MAX_PLAYERS = 32
#endif

const MAX_TEAM_LENGTH = 10

public plugin_init()
{
	register_plugin("CRXRanks: Team Win Message", "1.0", "OciXCrom")
	register_event("SendAudio", "OnTeamWin", "a", "2&%!MRAD_terwin", "2&%!MRAD_ctwin")
	CC_SetPrefix("&x04[Prefix]")
}

public OnTeamWin()
{
	new szTeam[MAX_TEAM_LENGTH]
	read_data(2, szTeam, charsmax(szTeam))

	new iPlayers[MAX_PLAYERS], iPnum
	get_players(iPlayers, iPnum, "ae", szTeam[7] == 'c' ? "CT" : "TERRORIST")

	new szReward[CRXRANKS_MAX_XP_REWARD_LENGTH]
	szReward = szTeam[7] == 'c' ? "team_win_ct" : "team_win_t"

	for(new iPlayer, iReward, i; i < iPnum; i++)
	{
		iPlayer = iPlayers[i]
		iReward = crxranks_get_xp_reward(iPlayer, szReward)

		if(iReward)
		{
			CC_SendMessage(iPlayer, "You received &x04%i XP &x01for winning this round.", iReward)
		}
	}
}

Аватар
impossible
Извън линия
Потребител
Потребител
Мнения: 410
Регистриран на: 15 Юни 2019, 12:41
Се отблагодари: 23 пъти
Получена благодарност: 35 пъти
Обратна връзка:

OciXCrom's Rank System [XP|Levels|Ranks]

Мнение от impossible » 10 Яну 2021, 23:36

Аз също искам да попитам как да направя също и да изписва с какво оръжие си убил даден играч ако за всяко убийство с различно оръжие - (си задал и различно xp).

Пример за убийство с ак47 да изписва префикса и вместо You da изписва името на убиеца да стане нещо такова [Rank System] impossible received 5 XP for killing unnamed with ak47
в момента показва само по-този начин
image.png
image.png (181.85 KiB) Преглеждано 984 пъти
image.png
image.png (181.85 KiB) Преглеждано 984 пъти



За всяка получено XP да изписва в чата и да показва събитието поради което е получено това XP

[Rank System] impossible received 7 XP for killing unnamed with AUG
[Rank System] impossible received 8 XP for killing unnamed with AWP
[Rank System] impossible received 9 XP for killing unnamed with Deagle
[Rank System] impossible received 19 XP for killing unnamed with m4a1

и така за всички останали оръжия също и за тези събития да ги изписва отново в чата когато направиш на някой Heashot, Заложиш бомбата, Обезвредиш бомбата, Отбора ти спечели, Отбора ти загуби, Убийство с граната, Убийство с нож



headshot = 3
knife = 6
grenade = 4
bomb_planted = 10
bomb_defused = 10
teamkill = -7
team_lose_t = -5
team_lose_ct = -5
suicide = -5
death = -5
bomb_exploded = 10
team_win_t = 10
team_win_ct = 10
Изображение

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 6945
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 116 пъти
Получена благодарност: 1162 пъти
Обратна връзка:

OciXCrom's Rank System [XP|Levels|Ranks]

Мнение от OciXCrom » 10 Яну 2021, 23:51

Не е толкова лесно да се направи колкото звучи, особено поради факта. че наградите може да се комбинират, на пример да убиеш някого с нож + headshot + ако е съотборник. За обезвреждане/залагане ще бъдат добавени в следващия ъпдейт, обаче за оръжията не виждам начин как би могло да стане.

Аватар
Ressilence
Извън линия
Потребител
Потребител
Мнения: 5
Регистриран на: 01 Дек 2020, 08:55
Местоположение: България, Ловеч
Се отблагодари: 1 път

OciXCrom's Rank System [XP|Levels|Ranks]

Мнение от Ressilence » 24 Яну 2021, 20:31

OciXCrom написа:
10 Яну 2021, 16:43

Код за потвърждение: Избери целия код

#include <amxmodx>
#include <cromchat>
#include <crxranks>

#if !defined MAX_PLAYERS
const MAX_PLAYERS = 32
#endif

const MAX_TEAM_LENGTH = 10

public plugin_init()
{
	register_plugin("CRXRanks: Team Win Message", "1.0", "OciXCrom")
	register_event("SendAudio", "OnTeamWin", "a", "2&%!MRAD_terwin", "2&%!MRAD_ctwin")
	CC_SetPrefix("&x04[Prefix]")
}

public OnTeamWin()
{
	new szTeam[MAX_TEAM_LENGTH]
	read_data(2, szTeam, charsmax(szTeam))

	new iPlayers[MAX_PLAYERS], iPnum
	get_players(iPlayers, iPnum, "ae", szTeam[7] == 'c' ? "CT" : "TERRORIST")

	new szReward[CRXRANKS_MAX_XP_REWARD_LENGTH]
	szReward = szTeam[7] == 'c' ? "team_win_ct" : "team_win_t"

	for(new iPlayer, iReward, i; i < iPnum; i++)
	{
		iPlayer = iPlayers[i]
		iReward = crxranks_get_xp_reward(iPlayer, szReward)

		if(iReward)
		{
			CC_SendMessage(iPlayer, "You received &x04%i XP &x01for winning this round.", iReward)
		}
	}
}
Няма ли да е по-добре, да се направи отделна константа от team_win_t | team_win_ct
като вместо това добавиш
new const XPREWARD_SURVIVE_CT[] = "survive_ct"
new const XPREWARD_SURVIVE_T[] = "survive_t"

и съответно кодa за exp-то да си е вътре в самият плъгина.
Така играчът, който е оцелял ще взима по-голям бонус xp от останалите, които са мъртви.
--------------------------------------------------------------------
Мисля, че ще е по-честно спрямо самият него.
--------------------------------------------------------------------

Аватар
OciXCrom
Извън линия
Администратор
Администратор
Мнения: 6945
Регистриран на: 06 Окт 2016, 19:20
Местоположение: /resetscore
Се отблагодари: 116 пъти
Получена благодарност: 1162 пъти
Обратна връзка:

OciXCrom's Rank System [XP|Levels|Ranks]

Мнение от OciXCrom » 24 Яну 2021, 21:24

По-скоро ще добавя и двете опции, пък който както иска да ги ползва. Ще го имам предвид при следващия ъпдейт. Благодаря за идеята.

Аватар
Ressilence
Извън линия
Потребител
Потребител
Мнения: 5
Регистриран на: 01 Дек 2020, 08:55
Местоположение: България, Ловеч
Се отблагодари: 1 път

OciXCrom's Rank System [XP|Levels|Ranks]

Мнение от Ressilence » 25 Яну 2021, 09:55

OciXCrom написа:
24 Яну 2021, 21:24
По-скоро ще добавя и двете опции, пък който както иска да ги ползва. Ще го имам предвид при следващия ъпдейт. Благодаря за идеята.
Точно това имах в предвид. :clap:

Също така добави съобщения, както си направил при самоубийствата и убийствата
send_chat_message(iVictim, false, "%L", iVictim, iXP > 0 ? "CRXRANKS_NOTIFY_DEATH_GET" : "CRXRANKS_NOTIFY_DEATH_LOSE", abs(iXP))
под същият вариант за да може валутата от RankSystem.ini да го хваща както при NOTIFY_ON_KILL
Забелязах обаче нещо, което е добре да се поправи: MINIMUM_PLAYERS, не игнорира spectators и дори да съм задал MINIMUM_PLAYERS 10, когато играчите в сървъра са по-малко от зададената валута, получават съобщения за получаване и губене на XP
Така, че само когато отборите CT/TE съдържат нужния брой играчи да се взима XP и да се получават съобщения.

Публикувай отговор
  • Подобни теми
    Отговори
    Преглеждания
     Последно мнение

Обратно към “Одобрени плъгини”

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 1 гост