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

[ROZWIĄZANE] Dodanie informacji kto przelał $


  • Zamknięty Temat jest zamknięty
7 odpowiedzi w tym temacie

#1 Obelix

    Profesjonalista

  • Użytkownik

Reputacja: 18
Początkujący

  • Postów:177
Offline

Napisano 23.02.2019 13:56

Witam,
Mógłby ktoś dodać informacje kto, komu przelał kasę?
Oraz aby można było przelać pieniądze komuś raz na 2 min

Ma to wyglądać jakoś tak: 
[Wysłałem komuś X kasy]: "Przelałeś %s $ Graczu %s"
[w 2 strone]: "Gracz %s przelał ci %s $."

[Czas]: "Musisz jeszcze %s poczekać, aby wysłać pieniądze."

Z góry dziękii! :D

SMA pluginu

Spoiler

  • +
  • -
  • 0

#2 ChrisN

    Wszechpomocny

  • Użytkownik

Reputacja: 31
Życzliwy

  • Postów:303
  • Imię:Christopher
Offline

Napisano 23.02.2019 15:31

Łap, jak komus dasz widzi napis "Otrzymales od gracza NICK - ILEKASY dolarow", a ten co dal "Przelales graczowi NICK - ILEKASY dolarów"

 

#include <amxmod> 
#include <amxmisc> 
#include <cstrike>
#include <colorchat>
 
new Taker[33];
 
new const g_commands[][] = { "say /kasa", "say_team /kasa" };
 
public plugin_init() {  
register_plugin("Cash Transfer","1.0","oeN.");
 
for(new i = 0; i<sizeof(g_commands); i++){
register_clcmd(g_commands[i], "CashMenu");
}
 
register_clcmd("Ile_Kasy", "GiveCash");
} 
 
public CashMenu(id, level, cid)
{
new menu = menu_create("\rWybierz gracza", "CashMenuHandle");
new players[32], pnum, tempid;
new szName[32], szTempid[10];
 
get_players(players, pnum);
 
for( new i; i<pnum; i++ )
{
tempid = players[i];
if(!is_user_connected(i) || id == tempid || get_user_money(tempid) == 16000 || cs_get_user_team(tempid) == CS_TEAM_SPECTATOR)
continue;
 
get_user_name(tempid, szName, charsmax(szName));
num_to_str(tempid, szTempid, charsmax(szTempid));
menu_additem(menu, szName, szTempid, 0);
}
 
menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
menu_display(id, menu, 0);
 
return PLUGIN_HANDLED;
}
 
public CashMenuHandle(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
 
new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
 
Taker[id] = str_to_num(data);
 
client_cmd(id, "messagemode Ile_Kasy");
 
menu_destroy(menu);
return PLUGIN_HANDLED;
}
 
public GiveCash(id) {
 
new szCash[64];
read_argv(1, szCash, 63)
remove_quotes(szCash);
new Cash = str_to_num(szCash);
 
new giverMoney = cs_get_user_money(id);
new takerMoney = cs_get_user_money(Taker[id]);
 
if(Cash <= 0) {
client_print(id, print_center, "Liczba musi byc wieksza od 0");
return PLUGIN_HANDLED;
}
 
if(giverMoney < Cash){
client_print(id, print_center, "Nie masz tyle kasy");
return PLUGIN_HANDLED;
}
 
if(takerMoney == 16000) {
client_print(id, print_center, "Gracz ma $16000");
return PLUGIN_HANDLED;
}
 
if(takerMoney + Cash > 16000) {
client_print(id, print_center, "Za duzo!");
return PLUGIN_HANDLED;
}
 
if( id == Taker[id]) {
client_print(id, print_center, "Nie mozesz dac sobie!");
return PLUGIN_HANDLED;
}
new name[32]
new name2[32]
get_user_name(id, name, 32);
get_user_name(Taker[id], name2, 32);
cs_set_user_money(id, giverMoney - Cash);
cs_set_user_money(Taker[id], takerMoney + Cash);
ColorChat(id, GREEN, "Przelales graczowi %s - %i dolarów", name2, Cash)
ColorChat(Taker[id], GREEN, "Otrzymales od gracza %s - %i dolarow", name, Cash)
 
return PLUGIN_CONTINUE;
 
}

  • +
  • -
  • 1

#3 Obelix

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 18
Początkujący

  • Postów:177
Offline

Napisano 23.02.2019 19:42

 

Łap, jak komus dasz widzi napis "Otrzymales od gracza NICK - ILEKASY dolarow", a ten co dal "Przelales graczowi NICK - ILEKASY dolarów"

#include <amxmod> 
#include <amxmisc> 
#include <cstrike>
#include <colorchat>
 
new Taker[33];
 
new const g_commands[][] = { "say /kasa", "say_team /kasa" };
 
public plugin_init() {  
register_plugin("Cash Transfer","1.0","oeN.");
 
for(new i = 0; i<sizeof(g_commands); i++){
register_clcmd(g_commands[i], "CashMenu");
}
 
register_clcmd("Ile_Kasy", "GiveCash");
} 
 
public CashMenu(id, level, cid)
{
new menu = menu_create("\rWybierz gracza", "CashMenuHandle");
new players[32], pnum, tempid;
new szName[32], szTempid[10];
 
get_players(players, pnum);
 
for( new i; i<pnum; i++ )
{
tempid = players[i];
if(!is_user_connected(i) || id == tempid || get_user_money(tempid) == 16000 || cs_get_user_team(tempid) == CS_TEAM_SPECTATOR)
continue;
 
get_user_name(tempid, szName, charsmax(szName));
num_to_str(tempid, szTempid, charsmax(szTempid));
menu_additem(menu, szName, szTempid, 0);
}
 
menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
menu_display(id, menu, 0);
 
return PLUGIN_HANDLED;
}
 
public CashMenuHandle(id, menu, item)
{
if( item == MENU_EXIT )
{
menu_destroy(menu);
return PLUGIN_HANDLED;
}
 
new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
 
Taker[id] = str_to_num(data);
 
client_cmd(id, "messagemode Ile_Kasy");
 
menu_destroy(menu);
return PLUGIN_HANDLED;
}
 
public GiveCash(id) {
 
new szCash[64];
read_argv(1, szCash, 63)
remove_quotes(szCash);
new Cash = str_to_num(szCash);
 
new giverMoney = cs_get_user_money(id);
new takerMoney = cs_get_user_money(Taker[id]);
 
if(Cash <= 0) {
client_print(id, print_center, "Liczba musi byc wieksza od 0");
return PLUGIN_HANDLED;
}
 
if(giverMoney < Cash){
client_print(id, print_center, "Nie masz tyle kasy");
return PLUGIN_HANDLED;
}
 
if(takerMoney == 16000) {
client_print(id, print_center, "Gracz ma $16000");
return PLUGIN_HANDLED;
}
 
if(takerMoney + Cash > 16000) {
client_print(id, print_center, "Za duzo!");
return PLUGIN_HANDLED;
}
 
if( id == Taker[id]) {
client_print(id, print_center, "Nie mozesz dac sobie!");
return PLUGIN_HANDLED;
}
new name[32]
new name2[32]
get_user_name(id, name, 32);
get_user_name(Taker[id], name2, 32);
cs_set_user_money(id, giverMoney - Cash);
cs_set_user_money(Taker[id], takerMoney + Cash);
ColorChat(id, GREEN, "Przelales graczowi %s - %i dolarów", name2, Cash)
ColorChat(Taker[id], GREEN, "Otrzymales od gracza %s - %i dolarow", name, Cash)
 
return PLUGIN_CONTINUE;
 
}

Dzięki + :D Działa! 
Mógłby ktoś dodać jeszcze do tego, aby przy wybieraniu gracza (Komu chcemy wysłać $) było widać obok ile dany gracz ma $ ? :D 
Coś w tym stylu --> Wybieramy Gracza: BaZyLiszEk (3000$) 
Oraz dodanie, aby można było wysłać komuś pieniądze raz na 2 minuty! Z góry dzięki !! :D 


  • +
  • -
  • 0

#4 Toldi

    Czempion

  • Power User

Reputacja: 259
Wszechwidzący

  • Postów:841
  • Imię:Mateusz
  • Lokalizacja:wies
Offline

Napisano 23.02.2019 21:01

#include <amxmod> 
#include <amxmisc> 
#include <cstrike>
#include <colorchat>

#define TASK 235

new Taker[33], bool:blokada[33];

new const g_commands[][] = { "say /kasa", "say_team /kasa" };

public plugin_init() {  
	register_plugin("Cash Transfer","1.0","oeN.");
	
	for(new i = 0; i<sizeof(g_commands); i++){
		register_clcmd(g_commands[i], "CashMenu");
	}
	
	register_clcmd("Ile_Kasy", "GiveCash");
} 

public client_connect(id)
	blokada[id]=false;

public CashMenu(id, level, cid)
{
	if(blokada[id])
	{
		ColorChat(id, RED, "Pieniadze mozesz przesylac raz na 2 minuty.");
		return PLUGIN_HANDLED;
	}
	
	new menu = menu_create("\rWybierz gracza", "CashMenuHandle");
	new players[32], pnum, tempid;
	new szName[32], szItem[64], iMoney;
	
	get_players(players, pnum);
	
	for( new i; i<pnum; i++ )
	{
		tempid = players[i];
		if(!is_user_connected(i) || id == tempid || get_user_money(tempid) == 16000 || cs_get_user_team(tempid) == CS_TEAM_SPECTATOR)
			continue;
		
		iMoney = cs_get_user_money(tempid)
		get_user_name(tempid, szName, charsmax(szName));
		
		formatex(szItem, charsmax(szItem), "%s (%i$)", szName, iMoney)
		menu_additem(menu, szItem);
	}
	
	menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
	menu_display(id, menu, 0);
	
	return PLUGIN_HANDLED;
}

public CashMenuHandle(id, menu, item)
{
	if( item == MENU_EXIT )
	{
		menu_destroy(menu);
		return PLUGIN_HANDLED;
	}
	
	new data[6], szName[64];
	new access, callback;
	menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
	
	Taker[id] = str_to_num(data);
	
	client_cmd(id, "messagemode Ile_Kasy");
	
	menu_destroy(menu);
	return PLUGIN_HANDLED;
}

public GiveCash(id) {
	
	new szCash[64];
	read_argv(1, szCash, 63)
	remove_quotes(szCash);
	new Cash = str_to_num(szCash);
	
	new giverMoney = cs_get_user_money(id);
	new takerMoney = cs_get_user_money(Taker[id]);
	
	if(Cash <= 0) {
		client_print(id, print_center, "Liczba musi byc wieksza od 0");
		return PLUGIN_HANDLED;
	}
	
	if(giverMoney < Cash){
		client_print(id, print_center, "Nie masz tyle kasy");
		return PLUGIN_HANDLED;
	}
	
	if(takerMoney == 16000) {
		client_print(id, print_center, "Gracz ma $16000");
		return PLUGIN_HANDLED;
	}
	
	if(takerMoney + Cash > 16000) {
		client_print(id, print_center, "Za duzo!");
		return PLUGIN_HANDLED;
	}
	
	if( id == Taker[id]) {
		client_print(id, print_center, "Nie mozesz dac sobie!");
		return PLUGIN_HANDLED;
	}
	new name[32]
	new name2[32]
	get_user_name(id, name, 32);
	get_user_name(Taker[id], name2, 32);
	cs_set_user_money(id, giverMoney - Cash);
	cs_set_user_money(Taker[id], takerMoney + Cash);
	ColorChat(id, GREEN, "Przelales graczowi %s - %i dolarów", name2, Cash)
	ColorChat(Taker[id], GREEN, "Otrzymales od gracza %s - %i dolarow", name, Cash)
	blokada[id]=true;
	
	new data[1];
	data[0]=id;
	set_task(120.0, "odblokuj", .parameter=data, .len=1)
	return PLUGIN_CONTINUE;	
}

public odblokuj(data[])
{
	new id=data[0];
	blokada[id]=false;
}

  • +
  • -
  • 4

#5 Obelix

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 18
Początkujący

  • Postów:177
Offline

Napisano 24.02.2019 12:58

#include <amxmod> 
#include <amxmisc> 
#include <cstrike>
#include <colorchat>

#define TASK 235

new Taker[33], bool:blokada[33];

new const g_commands[][] = { "say /kasa", "say_team /kasa" };

public plugin_init() {  
	register_plugin("Cash Transfer","1.0","oeN.");
	
	for(new i = 0; i<sizeof(g_commands); i++){
		register_clcmd(g_commands[i], "CashMenu");
	}
	
	register_clcmd("Ile_Kasy", "GiveCash");
} 

public client_connect(id)
	blokada[id]=false;

public CashMenu(id, level, cid)
{
	if(blokada[id])
	{
		ColorChat(id, RED, "Pieniadze mozesz przesylac raz na 2 minuty.");
		return PLUGIN_HANDLED;
	}
	
	new menu = menu_create("\rWybierz gracza", "CashMenuHandle");
	new players[32], pnum, tempid;
	new szName[32], szTempid[10], szItem[64], iMoney;
	
	get_players(players, pnum);
	
	for( new i; i<pnum; i++ )
	{
		tempid = players[i];
		if(!is_user_connected(i) || id == tempid || get_user_money(tempid) == 16000 || cs_get_user_team(tempid) == CS_TEAM_SPECTATOR)
			continue;
		
		iMoney = cs_get_user_money(tempid)
		get_user_name(tempid, szName, charsmax(szName));
		num_to_str(tempid, szTempid, charsmax(szTempid));
		
		formatex(szItem, charsmax(szItem), "%s (%s$)", szName, iMoney)
		menu_additem(menu, szItem, szTempid, 0);
	}
	
	menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
	menu_display(id, menu, 0);
	
	return PLUGIN_HANDLED;
}

public CashMenuHandle(id, menu, item)
{
	if( item == MENU_EXIT )
	{
		menu_destroy(menu);
		return PLUGIN_HANDLED;
	}
	
	new data[6], szName[64];
	new access, callback;
	menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
	
	Taker[id] = str_to_num(data);
	
	client_cmd(id, "messagemode Ile_Kasy");
	
	menu_destroy(menu);
	return PLUGIN_HANDLED;
}

public GiveCash(id) {
	
	new szCash[64];
	read_argv(1, szCash, 63)
	remove_quotes(szCash);
	new Cash = str_to_num(szCash);
	
	new giverMoney = cs_get_user_money(id);
	new takerMoney = cs_get_user_money(Taker[id]);
	
	if(Cash <= 0) {
		client_print(id, print_center, "Liczba musi byc wieksza od 0");
		return PLUGIN_HANDLED;
	}
	
	if(giverMoney < Cash){
		client_print(id, print_center, "Nie masz tyle kasy");
		return PLUGIN_HANDLED;
	}
	
	if(takerMoney == 16000) {
		client_print(id, print_center, "Gracz ma $16000");
		return PLUGIN_HANDLED;
	}
	
	if(takerMoney + Cash > 16000) {
		client_print(id, print_center, "Za duzo!");
		return PLUGIN_HANDLED;
	}
	
	if( id == Taker[id]) {
		client_print(id, print_center, "Nie mozesz dac sobie!");
		return PLUGIN_HANDLED;
	}
	new name[32]
	new name2[32]
	get_user_name(id, name, 32);
	get_user_name(Taker[id], name2, 32);
	cs_set_user_money(id, giverMoney - Cash);
	cs_set_user_money(Taker[id], takerMoney + Cash);
	ColorChat(id, GREEN, "Przelales graczowi %s - %i dolarów", name2, Cash)
	ColorChat(Taker[id], GREEN, "Otrzymales od gracza %s - %i dolarow", name, Cash)
	blokada[id]=true;
	
	new data[1];
	data[0]=id;
	set_task(120.0, "odblokuj", .parameter=data, .len=1)
	return PLUGIN_CONTINUE;	
}

public odblokuj(data[])
{
	new id=data[0];
	blokada[id]=false;
}

Nie działa tak jak powinno. :/ 
Czas działa prawidłowo, lecz gdy wybieramy gracza, któremu chcemy wysłać pieniądze nie widzimy ile on ma $. 
Wygląda to tak: 
https://imgur.com/a/uRX0Akk

 


  • +
  • -
  • 0

#6 Toldi

    Czempion

  • Power User

Reputacja: 259
Wszechwidzący

  • Postów:841
  • Imię:Mateusz
  • Lokalizacja:wies
Offline

Napisano 24.02.2019 12:59

A no tak zamiast %s daj %i tuż przed znakiem $

formatex(szItem, charsmax(szItem), "%s (%i$)", szName, iMoney)
menu_additem(menu, szItem);

  • +
  • -
  • 1

#7 Obelix

    Profesjonalista

  • Autor tematu
  • Użytkownik

Reputacja: 18
Początkujący

  • Postów:177
Offline

Napisano 24.02.2019 13:16

Dzięki, wszystko działa! :D


  • +
  • -
  • 0

#8 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 553
Godlike

  • Postów:11 976
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 24.02.2019 14:26

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, report.png raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 0




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

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