Skocz do zawartości
Linux`

[CS:GO] [Cod Nowy] Sklepik

Rekomendowane odpowiedzi

[opis]

Dzięki temu dodatkowi na serwerze pojawi się prosty cod sklepik gdzie możemy kupić ulepszenia za dolary w grze. Menu sklepu oferuje leczenie życia, losowanie bonusów, doświadczenie, losowy item lub naprawę itemu. 

Losowy bonus zawiera losową ilość dolarów, losową ilość expa lub losowy item.


[komendy]

Cytat

codsklep - otwiera menu sklepu

sklep - otwiera menu sklepu

 

 

[instalacja]

Standardowa

 

[download]

codmod_sklep.sp
Hej! Skorzystałeś z linku lub pobrałeś załącznik? Uhonoruj naszą pracę poprzez rejestrację na forum i rośnij razem z nami!

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

ugowane|?

22 godziny temu, supertimor napisał:

Tylko swojej wymiany nie wstawiaj, bo jest zbugowana! ? 

Czas się buguje, funkcja przestarzale zbudowana ? 

 

Co jest zbugowane? Z tego co wiem dziala prawidlowo (czasem sypnie jedynie blad, kod jest dosc stary). Ale nie mow mi prosze takich rzeczy. Jak masz lepszy dodatek to zaczekam na twoj, byle nie byl aktualizacja mojego :).

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Chodzi o to, że po przekazaniu komuś itemu czas się buguje, dłużąc się w nieskończoność.

Przecież nie mówię tego chamsko, ani nie wymyślam głupot. Korzystam z silnika, zakupiliśmy go ? 

 

// po wymianie itemu, nie przekazaniu za darmo

 

dokładnie te linijki generują ten błąd (występował na codmod i surf+cod, prosto z wiadomości od Ciebie instalowane więc nic nie grzebaliśmy z tym)


		static Float:time[65];
		new Float:gametime = GetGameTime();
		if(gametime > time[client]+60.0)
			time[client] = gametime;
		else
		{
			PrintToChat(client, "[COD:MW] Musisz odczekac 60 sekund by moc zaoferowac ponowna wymiane itemu!");
			return;
		}

Próbowałem to ominąć po wymianie dodając do handlera2 pod ustawienie itemów zadeklarowanego inta g_iPlayerTime w ten sposób

            g_iPlayerTime[target]=GetTime()+5;    

a warunek budując tak 

		if(g_iPlayerTime[client]>=GetTime())
		{
			PrintToChat(client, "%s Musisz odczekac chwile, by moc zaoferowac ponowne przekazanie itemu!", PREFIX);
			return;
		}

Miałem jednak problem z indexami, potem jakoś o tym zapomniałem, może dokończę niebawem - ale jak chciałeś tak zrobię. Nie wkleję kodu ? 

Edytowane przez supertimor

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
1 godzinę temu, supertimor napisał:

Chodzi o to, że po przekazaniu komuś itemu czas się buguje, dłużąc się w nieskończoność.

Przecież nie mówię tego chamsko, ani nie wymyślam głupot. Korzystam z silnika, zakupiliśmy go ? 

 

// po wymianie itemu, nie przekazaniu za darmo

 

dokładnie te linijki generują ten błąd (występował na codmod i surf+cod, prosto z wiadomości od Ciebie instalowane więc nic nie grzebaliśmy z tym)



		static Float:time[65];
		new Float:gametime = GetGameTime();
		if(gametime > time[client]+60.0)
			time[client] = gametime;
		else
		{
			PrintToChat(client, "[COD:MW] Musisz odczekac 60 sekund by moc zaoferowac ponowna wymiane itemu!");
			return;
		}

Próbowałem to ominąć po wymianie dodając do handlera2 pod ustawienie itemów zadeklarowanego inta g_iPlayerTime w ten sposób


            g_iPlayerTime[target]=GetTime()+5;    

a warunek budując tak 


		if(g_iPlayerTime[client]>=GetTime())
		{
			PrintToChat(client, "%s Musisz odczekac chwile, by moc zaoferowac ponowne przekazanie itemu!", PREFIX);
			return;
		}

Miałem jednak problem z indexami, potem jakoś o tym zapomniałem, może dokończę niebawem - ale jak chciałeś tak zrobię. Nie wkleję kodu ? 

 

Nie masz najnowszego kodu ktory rozsylalem. Bylo pare fixow od tamtej pory, problem polega na tym ze zmienne statyczne nie sa resetowane po zmianach mapy a wiec ten czas dluzy sie w nieskonczonosc powodujac bug. Musisz utworzyc zmienna globalna i najlepiej resetowac przy polaczeniu gracza.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Właśnie tak zrobiłem, zapomniałem nadmienić. Skorzystam jednak ze wklejki, bo nie mam ochoty znów użerać się z tymi ID, zwłaszcza że samemu nie sprawdzę działania ? 

Edytowane przez supertimor

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić obrazków. Dodaj lub załącz obrazki z adresu URL.


×
×
  • Dodaj nową pozycję...