Wysłany: 2012-12-12, 20:15
kamil445
:D
Wiek: 29 Na forum: 6151 dni Posty: 119
Nick w MP: Czechu
Piwa : 882
Witam,
mam problem gdy? komenda dzia?a poprawnie na ID ale pobiera z?y nick ...
komenda :
Kod: CMD:vheal(playerid, params[])
{
new gracz;
new str[256];
new name2[MAX_PLAYER_NAME];
GetPlayerName(gracz, name2, sizeof(name2));
if(!VIP[playerid]) return SendClientMessage(playerid, COLOR_RED, "{24FF0A}[ERROR]{FFFFFF} Nie jeste? VIP'em!");
if(sscanf(params, "d", gracz)) return SendClientMessage(playerid, COLOR_GREY, "{24FF0A}[INFO]{FFFFFF} U?yj /vheal [ID]");
if(!IsPlayerConnected(gracz)) return SendClientMessage(playerid, COLOR_RED, "{24FF0A}[ERROR]{FFFFFF} Nie ma takiego gracza");
SetPlayerHealth(gracz, 100);
format(str, sizeof(str), "{24FF0A}[INFO]{FFFFFF} VIP %s (ID: %d) uzdrowi?(a) ci?!", PlayerName(playerid), playerid);
SendClientMessage(gracz, COLOR_LIGHTBLUE, str);
format(str, sizeof(str), "{24FF0A}[INFO]{FFFFFF} Uzdrowi?e?(a?) gracza %s (ID: %d)", name2, gracz);
SendClientMessage(playerid, COLOR_LIGHTBLUE, str);
return 1;
}
czy gdy zmienie Kod:
na Kod: new gracz = strval(params);
b?dzie dobrze czy w innym miejscu tkwi problem ?
Wysłany: 2012-12-12, 20:19
ToxiC.
Wiek: 28 Na forum: 5246 dni Posty: 3792
Piwa : 8590
heh. mo?e tak:
Kod:
CMD:vheal(playerid, params[])
{
new gracz;
new str[256];
if(!VIP[playerid]) return SendClientMessage(playerid, COLOR_RED, "{24FF0A}[ERROR]{FFFFFF} Nie jeste? VIP'em!");
if(sscanf(params, "d", gracz)) return SendClientMessage(playerid, COLOR_GREY, "{24FF0A}[INFO]{FFFFFF} U?yj /vheal [ID]");
if(!IsPlayerConnected(gracz)) return SendClientMessage(playerid, COLOR_RED, "{24FF0A}[ERROR]{FFFFFF} Nie ma takiego gracza");
SetPlayerHealth(gracz, 100);
format(str, sizeof(str), "{24FF0A}[INFO]{FFFFFF} VIP %s (ID: %d) uzdrowi?(a) ci?!", PlayerName(playerid), playerid);
SendClientMessage(gracz, COLOR_LIGHTBLUE, str);
format(str, sizeof(str), "{24FF0A}[INFO]{FFFFFF} Uzdrowi?e?(a?) gracza %s (ID: %d)", PlayerName(gracz), gracz);
SendClientMessage(playerid, COLOR_LIGHTBLUE, str);
return 1;
}
Wysłany: 2012-12-12, 20:39
Combacior
Wiek: 29 Na forum: 5795 dni Posty: 1516
Piwa : 2161
G?rny przyk?ad zadzia?a, ale ja wyt?umacz? dlaczego pobiera?o nick gracza id 0
Kod: CMD:vheal(playerid, params[])
{
new gracz;
new str[256];
new name2[MAX_PLAYER_NAME];
GetPlayerName(gracz, name2, sizeof(name2));
if(!VIP[playerid]) return SendClientMessage(playerid, COLOR_RED, "{24FF0A}[ERROR]{FFFFFF} Nie jeste? VIP'em!");
if(sscanf(params, "d", gracz)) return SendClientMessage(playerid, COLOR_GREY, "{24FF0A}[INFO]{FFFFFF} U?yj /vheal [ID]");
if(!IsPlayerConnected(gracz)) return SendClientMessage(playerid, COLOR_RED, "{24FF0A}[ERROR]{FFFFFF} Nie ma takiego gracza");
SetPlayerHealth(gracz, 100);
format(str, sizeof(str), "{24FF0A}[INFO]{FFFFFF} VIP %s (ID: %d) uzdrowi?(a) ci?!", PlayerName(playerid), playerid);
SendClientMessage(gracz, COLOR_LIGHTBLUE, str);
format(str, sizeof(str), "{24FF0A}[INFO]{FFFFFF} Uzdrowi?e?(a?) gracza %s (ID: %d)", name2, gracz);
SendClientMessage(playerid, COLOR_LIGHTBLUE, str);
return 1;
}
Popatrz dok?adnie na kod. Jak tworzysz zmienn?, to jej warto?? domy?lnie wynosi 0, a nick pobierasz zanim pobierzesz id gracza, kt?rego ma leczy?. Rozwi?zanie
Kod: CMD:vheal(playerid, params[])
{
new gracz;
new str[256];
new name2[MAX_PLAYER_NAME];
if(!VIP[playerid]) return SendClientMessage(playerid, COLOR_RED, "{24FF0A}[ERROR]{FFFFFF} Nie jeste? VIP'em!");
if(sscanf(params, "d", gracz)) return SendClientMessage(playerid, COLOR_GREY, "{24FF0A}[INFO]{FFFFFF} U?yj /vheal [ID]");
if(!IsPlayerConnected(gracz)) return SendClientMessage(playerid, COLOR_RED, "{24FF0A}[ERROR]{FFFFFF} Nie ma takiego gracza");
SetPlayerHealth(gracz, 100);
GetPlayerName(gracz, name2, sizeof(name2));
format(str, sizeof(str), "{24FF0A}[INFO]{FFFFFF} VIP %s (ID: %d) uzdrowi?(a) ci?!", PlayerName(playerid), playerid);
SendClientMessage(gracz, COLOR_LIGHTBLUE, str);
format(str, sizeof(str), "{24FF0A}[INFO]{FFFFFF} Uzdrowi?e?(a?) gracza %s (ID: %d)", name2, gracz);
SendClientMessage(playerid, COLOR_LIGHTBLUE, str);
return 1;
}
Wysłany: 2012-12-12, 21:23
kamil445
:D
Wiek: 29 Na forum: 6151 dni Posty: 119
Nick w MP: Czechu
Piwa : 882
oldshool dzi?ki za podpowiedz myslalem ze z zmiennej gracz nie da si? od razu pobra? nicku, ale jak wida? si? da (bynajmniej b?d? kr?tsze komendy )
CombaT wielkie dzi?ki za wyt?umaczenie
?apcie piwo .
PS: mam problem ze zmienna kt?ra pobiera kolor gracza
g?ra : Kod:
komenda 1 :
Kod: CMD:vinvisible(playerid, params[])
{
new gracz;
new str[128];
if(!VIP[playerid]) return SendClientMessage(playerid, COLOR_RED, "{24FF0A}[ERROR]{FFFFFF} Nie jeste? VIP'em!");
if(sscanf(params, "d", gracz)) return SendClientMessage(playerid, COLOR_RED, "{24FF0A}[INFO]{FFFFFF} U?yj /vinvisible [ID]");
if(!IsPlayerConnected(gracz)) return SendClientMessage(playerid, COLOR_RED, "{24FF0A}[ERROR]{FFFFFF} Nie ma takiego gracza");
kolor[gracz] = GetPlayerColor(gracz);
SetPlayerColor(gracz, 0xFFFFFF00);
format(str, sizeof(str), "{24FF0A}[INFO]{FFFFFF} Zrobi?e?(a?) %s (ID: %d) niewidzialnym", PlayerName(gracz), gracz);
SendClientMessage(playerid, COLOR_RED, str);
format(str, sizeof(str), "{24FF0A}[INFO]{FFFFFF} VIP %s (ID: %d) zrobi?(a) ci? niewidzialnym", PlayerName(playerid), playerid);
SendClientMessage(gracz, COLOR_RED, str);
return 1;
}
komenda 2: Kod: CMD:vvisible(playerid, params[])
{
new gracz;
new str[128];
if(!VIP[playerid]) return SendClientMessage(playerid, COLOR_RED, "{24FF0A}[ERROR]{FFFFFF} Nie jeste? VIP'em!");
if(sscanf(params, "d", gracz)) return SendClientMessage(playerid, COLOR_RED, "{24FF0A}[INFO]{FFFFFF} U?yj /vvisible [ID]");
if(!IsPlayerConnected(gracz)) return SendClientMessage(playerid, COLOR_RED, "{24FF0A}[ERROR]{FFFFFF} Nie ma takiego gracza");
SetPlayerColor(gracz, kolor[gracz]);
format(str, sizeof(str), "{24FF0A}[INFO]{FFFFFF} Zrobi?e?(a?) %s (ID: %d) widzialnym", PlayerName(gracz), gracz);
SendClientMessage(playerid, COLOR_RED, str);
format(str, sizeof(str), "{24FF0A}[INFO]{FFFFFF} VIP %s (ID: %d) zrobi?(a) ci? widzialnym!", PlayerName(playerid), playerid);
SendClientMessage(gracz, COLOR_RED, str);
return 1;
}
gdy wpisze pierwsza komende daje niewidzialno?? (mial?em kolor np niebieski) a gdy wpisze komende 2 to oddaje mi kolor ale czarny . W czym jest problem ? zle pobieram kolor gracza ?
Wysłany: 2012-12-12, 21:52
Combacior
Wiek: 29 Na forum: 5795 dni Posty: 1516
Piwa : 2161
Upewnij si?, ?e przed u?yciem komendy na niewidzialno?? u?y?e? dla gracza funkcji SetPlayerColor, np. W OnPlayerConnect. Jest ju? taki bug, ?e je?eli nie u?yjesz funkcji SetPlayerColor, a u?yjesz GetPlayerColor, to zwr?ci 0x00000000 - kolor czarny. Dla pewno?ci daj w OnPlayerConnect funkcj? SetPlayerColor i wtedy sprawd?.
Wysłany: 2012-12-13, 18:55
kamil445
:D
Wiek: 29 Na forum: 6151 dni Posty: 119
Nick w MP: Czechu
Piwa : 882
gdy wpisa?em w OnPlayerConnect : Kod:
to wywala?o warningi ...
gdy wpisa?em : Kod: SetPlayerColor(playerid, COLOR_RED);
to ka?dy gracz ma kolor czerwony ...
da si? uzyc tego ale tak by nie zmienia?o koloru gracza, by mia? losowy kolor podczas pod??czania jak zawsze by?o oraz aby komenda /vinvisible i /vvivisble dzia?a?a prawid?owo ( z tym SetPlayerColor(playerid, COLOR_RED); komendy dzia?aj?)
Wysłany: 2012-12-13, 19:50
Combacior
Wiek: 29 Na forum: 5795 dni Posty: 1516
Piwa : 2161
G?ra mapy
Kod: new PlayerColors[200] = {
0xFF8C13FF,0xC715FFFF,0x20B2AAFF,0xDC143CFF,0x6495EDFF,0xf0e68cFF,0x778899FF,0xFF1493FF,0xF4A460FF,
0xEE82EEFF,0xFFD720FF,0x8b4513FF,0x4949A0FF,0x148b8bFF,0x14ff7fFF,0x556b2fFF,0x0FD9FAFF,0x10DC29FF,
0x534081FF,0x0495CDFF,0xEF6CE8FF,0xBD34DAFF,0x247C1BFF,0x0C8E5DFF,0x635B03FF,0xCB7ED3FF,0x65ADEBFF,
0x5C1ACCFF,0xF2F853FF,0x11F891FF,0x7B39AAFF,0x53EB10FF,0x54137DFF,0x275222FF,0xF09F5BFF,0x3D0A4FFF,
0x22F767FF,0xD63034FF,0x9A6980FF,0xDFB935FF,0x3793FAFF,0x90239DFF,0xE9AB2FFF,0xAF2FF3FF,0x057F94FF,
0xB98519FF,0x388EEAFF,0x028151FF,0xA55043FF,0x0DE018FF,0x93AB1CFF,0x95BAF0FF,0x369976FF,0x18F71FFF,
0x4B8987FF,0x491B9EFF,0x829DC7FF,0xBCE635FF,0xCEA6DFFF,0x20D4ADFF,0x2D74FDFF,0x3C1C0DFF,0x12D6D4FF,
0x48C000FF,0x2A51E2FF,0xE3AC12FF,0xFC42A8FF,0x2FC827FF,0x1A30BFFF,0xB740C2FF,0x42ACF5FF,0x2FD9DEFF,
0xFAFB71FF,0x05D1CDFF,0xC471BDFF,0x94436EFF,0xC1F7ECFF,0xCE79EEFF,0xBD1EF2FF,0x93B7E4FF,0x3214AAFF,
0x184D3BFF,0xAE4B99FF,0x7E49D7FF,0x4C436EFF,0xFA24CCFF,0xCE76BEFF,0xA04E0AFF,0x9F945CFF,0xDCDE3DFF,
0x10C9C5FF,0x70524DFF,0x0BE472FF,0x8A2CD7FF,0x6152C2FF,0xCF72A9FF,0xE59338FF,0xEEDC2DFF,0xD8C762FF,
0xD8C762FF,0xFF8C13FF,0xC715FFFF,0x20B2AAFF,0xDC143CFF,0x6495EDFF,0xf0e68cFF,0x778899FF,0xFF1493FF,
0xF4A460FF,0xEE82EEFF,0xFFD720FF,0x8b4513FF,0x4949A0FF,0x148b8bFF,0x14ff7fFF,0x556b2fFF,0x0FD9FAFF,
0x10DC29FF,0x534081FF,0x0495CDFF,0xEF6CE8FF,0xBD34DAFF,0x247C1BFF,0x0C8E5DFF,0x635B03FF,0xCB7ED3FF,
0x65ADEBFF,0x5C1ACCFF,0xF2F853FF,0x11F891FF,0x7B39AAFF,0x53EB10FF,0x54137DFF,0x275222FF,0xF09F5BFF,
0x3D0A4FFF,0x22F767FF,0xD63034FF,0x9A6980FF,0xDFB935FF,0x3793FAFF,0x90239DFF,0xE9AB2FFF,0xAF2FF3FF,
0x057F94FF,0xB98519FF,0x388EEAFF,0x028151FF,0xA55043FF,0x0DE018FF,0x93AB1CFF,0x95BAF0FF,0x369976FF,
0x18F71FFF,0x4B8987FF,0x491B9EFF,0x829DC7FF,0xBCE635FF,0xCEA6DFFF,0x20D4ADFF,0x2D74FDFF,0x3C1C0DFF,
0x12D6D4FF,0x48C000FF,0x2A51E2FF,0xE3AC12FF,0xFC42A8FF,0x2FC827FF,0x1A30BFFF,0xB740C2FF,0x42ACF5FF,
0x2FD9DEFF,0xFAFB71FF,0x05D1CDFF,0xC471BDFF,0x94436EFF,0xC1F7ECFF,0xCE79EEFF,0xBD1EF2FF,0x93B7E4FF,
0x3214AAFF,0x184D3BFF,0xAE4B99FF,0x7E49D7FF,0x4C436EFF,0xFA24CCFF,0xCE76BEFF,0xA04E0AFF,0x9F945CFF,
0xDCDE3DFF,0x10C9C5FF,0x70524DFF,0x0BE472FF,0x8A2CD7FF,0x6152C2FF,0xCF72A9FF,0xE59338FF,0xEEDC2DFF,
0xD8C762FF,0xD8C762FF
};
W OnPlayerConnect
Kod: SetPlayerColor(playerid, PlayerColors[random(200)]);
To daje losowy kolor.
Tagi: pobiera :: tylko :: nick
Anonymous
Na forum: 245 dni
Posty: 1
Anonymous Koniecznie zajrzyj na: