←  Pluginy AMXX

AMXX.pl: Support AMX Mod X i SourceMod

»

Xtra Players Slots

  • +
  • -
graczu's Photo graczu 26.12.2008

Witam, nudziło mi się ostatnio więc napisałem plugin który:

Na każdej mapie wyłania najlepszego gracza, i go zapisuje.
Najlepszy gracz otrzymuje slot.
Gdy znów jest ta sama mapa by zostać najlepszym graczem i dostać slota trzeba oczywiście pokonać poprzedniego zwycięzcę zdobywając większa ilość fragów niż poprzednik + 20 fragów więcej.

Instalacja:

W katalogu configs tworzymy katalog: xleaders
Kompilujemy plugin i go dodajemy

Inne:

Plugin tylko dla osób które korzystają z users.ini
Jak będzie mi się chciało dodam by działało z AMXBANS Admin's.
Sloty przyznawane są na STEAM_ID

To siśtko..

Update 1.1

Attached Files

Quote

  • +
  • -
0g0r's Photo 0g0r 26.12.2008

a na ile jest ten slot?
Quote

  • +
  • -
graczu's Photo graczu 26.12.2008

4ever, aż go sam nie skasujesz ;P
Quote

  • +
  • -
0g0r's Photo 0g0r 27.12.2008

a sluchaj... u mnie na servie jest taki admin, ktory ma juz adma (wiec slota tez)... moglbys to jakos tak przerobic zeby go pomijal ten plug? :D
Quote

  • +
  • -
graczu's Photo graczu 27.12.2008

Automatycznie Pomija graczy którzy mają Sloty, wystarczy wejść w kod pluginu i zobaczyć.

	if(IsLeader == 1 && lastId > 0 && lastFrags > NextLeaderFRAGS && !access(lastId, ADMIN_RESERVATION)){
		new nlname[32], formatOne[256], formatTwo[256]
		get_user_name(lastId, nlname, 31)
		formatex(formatOne, 255, "^x04[MAP LEADER]^x01 Mamy nowego Map Lidera! (%s) ktory ustrzelil: %i fragow i jest lepszy od: %s.", nlname, lastFrags, LeaderNICK)
		formatex(formatTwo, 255, "^x04[RESERVATION SLOT]^x01 %s dostal ^x04Slot Rezerwacji^x01.", nlname)
		colored_msgAll(formatOne)
		colored_msgAll(formatTwo)
		setLeader(lastId)
	} else if(IsLeader == 0 && lastId > 0 && lastFrags > MinimumLeaderFrags && !access(lastId, ADMIN_RESERVATION)){
		new nlname[32], formatOne[256], formatTwo[256]
		get_user_name(lastId, nlname, 31)
		formatex(formatOne, 255, "^x04[MAP LEADER]^x01 Mamy nowego Lidera na Mapie: %s posiadajacy %i fragow!", nlname, lastFrags)
		formatex(formatTwo, 255, "^x04[RESERVATION SLOT]^x01 %s dostal ^x04Slot Rezerwacji^x01.", nlname)
		colored_msgAll(formatOne)
		colored_msgAll(formatTwo)
		setLeader(lastId)
	} else if(IsLeader == 1 && equali(LeaderSTEAMID, SteamIdRead)){
		new formatOne[256]
		formatex(formatOne, 255, "^x04[MAP LEADER]^x01 Aktualny Map Lider %s udowodnil swojego skilla i jest znow NAJLEPSZY!", LeaderNICK)
		colored_msgAll(formatOne)
	} else if(access(lastId, ADMIN_RESERVATION)){
		new formatOne[256]
		formatex(formatOne, 255, "^x04[MAP LEADER]^x01 Najlepszy gracz na Mapie Posiada juz Slot Rezerwacji...", LeaderNICK)
		colored_msgAll(formatOne)
	} else {
		new formatOne[256], formatTwo[256]
		if(IsLeader == 1){
			formatex(formatOne, 255, "^x04[MAP LEADER]^x01 Nikt nie jest lepszy od %s ...", LeaderNICK)
			formatex(formatTwo, 255, "^x04[MAP LEADER]^x01 By zdobyc Slot Rezerwacji trzeba zdobyc wiecej niz %i fragow na tej mapie!", LeaderNICK, NextLeaderFRAGS)
			colored_msgAll(formatOne)
			colored_msgAll(formatTwo)
		} else {
			formatex(formatOne, 255, "^x04[MAP LEADER]^x01 Nikt niema minimum fragow %i by zostac Map Liderem... lames...", MinimumLeaderFrags)
			colored_msgAll(formatOne)
		}
	}

Quote

  • +
  • -
R3X's Photo R3X 27.12.2008

Mógłbyś to trochę zoptymalizować ;) Pomysł spoko.

Edit.
Rozdajesz tym slot na jedną mapę? :P
Quote

  • +
  • -
graczu's Photo graczu 27.12.2008

Już się nie stawia serwerów na P333 by pluginy optymalizować hehe

Z deka nie wiem co tu optymalizować, dodać get_playersnum zamiast wyliczania do 32?..., prosto napisane by każdy laik się domyślił co i jak.
Quote

  • +
  • -
R3X's Photo R3X 27.12.2008

Każda poprawka zmniejszająca ilość zużywanych zasobów to + dla pluginu. Jeśli uważasz, że nie potrzeba już żadnych zmian to ok, nie chcę ingerować w Twoją pracę.
Quote

  • +
  • -
graczu's Photo graczu 28.12.2008

Każda poprawka zmniejszająca ilość zużywanych zasobów to + dla pluginu. Jeśli uważasz, że nie potrzeba już żadnych zmian to ok, nie chcę ingerować w Twoją pracę.


Ja nie mówię że jest inaczej. Nie uczyłem się nigdy c# ani c++, więc nie wiem jak to jest z optymalizacją pluginów, porostu je pisze i działają. Każdy może w ten plugin i moją prace ingerować jak chce, w końcu po to go udostępniłem.

Update: 1.1

Coś tam Dodałem
Usunąłem rzeczy które się powtarzały
Zmieniłem wszędzie treści na Polski

Attached Files

Quote

naXe's Photo naXe 28.12.2008

fajne :]
Quote

  • +
  • -
Spyder12's Photo Spyder12 29.12.2008

"Gdy znów jest ta sama mapa by zostać najlepszym graczem i dostać slota trzeba oczywiście pokonać poprzedniego zwycięzcę zdobywając większa ilość fragów niż poprzednik + 20 fragów więcej. "


Czyli gramy na duscie, domslne ustawienia TP, no rash 20 min mapa itp, najleepszy gracz ma 10 fragów, to co jak za 5 mapek bedzie dust, to gosciu inny musi zdobyc 31 fragow?
Quote

  • +
  • -
graczu's Photo graczu 30.12.2008

Dokładnie. Ilość fragów więcej możesz sobie zmienić w kodzie i skompilować na nowo.

new AddLeaderFrags = 20
Quote

  • +
  • -
kyku's Photo kyku 01.01.2009

Pysle, ze lepiej bylo by zrobic aby na poczatku rundy bylo by losowanie czy bedzie, czy tez nie slot.
Chodzi mi o funkcje radom ktora losuje liczby
jezeli liczba byla by rowna X, wyswietlal by sie napis ze zwyciezca mapy dostanie slota.
Pozdrawiam, kyku.
Quote

  • +
  • -
smart's Photo smart 07.01.2009

nawet nawet xP
Quote