Ausserdem geben strings nur 128 Zeichen wieder...
Was
Ausserdem geben strings nur 128 Zeichen wieder...
Was
Was
Meinte die SendClientMessage, nicht den String.
Wieso benennt man bitte einen String 'Query' ?
Sinn dahinter?
Du kannst den auch Spongebob nennen oder auch Kai_Uwe
Das ist ja egal
Eine SendClientMessage schafft nur 128 Zeichen wenn man für jede Zeile eine neue format deklaration nutzt, dann ist der headspace auch schnell voll daher nutz eine in einer Funktion das reicht vollkommen aus
Moin Moin
Ich habe gerade ein Bug im Ammunation gefunden also wenn man /buygun macht komen die Nachichten und so.
Wenn ich aber eine Waffe oder so kaufe und munnition eingebe krige ich die sachen nicht aber ich verliere mein geld :x
und wenn ich das gekauft habe kommt immer Server : Unknowen Command !
Kann mir einer das Bitte machen , ich bin nicht der Scripter / habe nicht die nötige erfahrung um sowas zu machen !
if (strcmp(cmd, "/buygun", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(IsPlayerInRangeOfPoint(playerid,3.0,290.2523,-106.7863,1001.5156)||
IsPlayerInRangeOfPoint(playerid,3.0,295.4237,-38.1667,1001.5156))
//IsPlayerInRangeOfPoint(playerid,10.0,295.1371,-80.8117,1001.5156))
{
if(PlayerInfo[playerid][pLevel] <= 4)
{
SendClientMessage(playerid, COLOR_RED, "Du musst mindestens Level 5 sein um hier einzukaufen");
return 1;
}
if(GetPlayerMoney(playerid) < 1)
{
SendClientMessage(playerid, COLOR_GREY, "Du hast nicht genug Geld !");
return 1;
}
if(PlayerInfo[playerid][pGunLic] == 0)
{
SendClientMessage(playerid, COLOR_GREY, "Du hast kein Waffenschein !");
return 1;
}
new gun;
new gunid[16];
new gunstring1[256];
new gunstring2[256];
new gunstring3[256];
new gunstring4[256];
new gunstring5[256];
new infostring[256];
new guncharge;
new ammocharge;
new local = PlayerInfo[playerid][pLocal];
if(GetPlayerInterior(playerid) == 1||GetPlayerInterior(playerid) == 6)
//PlayerInfo[playerid][pLocal] == 101 || PlayerInfo[playerid][pLocal] == 102 || PlayerInfo[playerid][pLocal] == 103)
{
/* if(BizzInfo[location-99][bProducts] <= 0)
{
GameTextForPlayer(playerid, "~r~Ausverkauft", 5000, 1);
return 1;
}*/
new modsss = 200;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
format(string, sizeof(string), "Benutzung: /buygun [waffenname] [munition]");
SendClientMessage(playerid, COLOR_GREEN,"_______________________________________");
SendClientMessage(playerid, COLOR_WHITE,"*** Waffen & Munition ***");
SendClientMessage(playerid, COLOR_GRAD2,string);
format(gunstring1, 256, "Waffen: Fallschirm ($%d) Golfschläger ($%d) Schlagstock ($%d) Baseballschläger ($%d) Schaufel ($%d) PoolCue ($%d)",
GunPrice[0][0]/100*modsss,GunPrice[1][0]/100*modsss,GunPrice[2][0]/100*modsss,GunPrice[3][0]/100*modsss,GunPrice[4][0]/100*modsss,GunPrice[5][0]/100*modsss,GunPrice[6][0]/100*modsss);
SendClientMessage(playerid, COLOR_GRAD3, gunstring1);
format(gunstring2, 256, "Waffen: VioletterDildo ($%d) WeißerDildo ($%d) LangerweißerDildo ($%d) WeißerDildo2 ($%d) Blumen ($%d) cane",
GunPrice[7][0]/100*modsss,GunPrice[8][0]/100*modsss,GunPrice[9][0]/100*modsss,GunPrice[10][0]/100*modsss,GunPrice[11][0]/100*modsss,GunPrice[12][0]/100*modsss);
SendClientMessage(playerid, COLOR_GRAD3, gunstring2);
format(gunstring3, 256, "Waffen: SD-Pistole ($%d) DesertEagle ($%d) MP5 ($%d)",
GunPrice[13][0]/100*modsss,GunPrice[14][0]/100*modsss,GunPrice[15][0]/100*modsss,GunPrice[16][0]/100*modsss,GunPrice[17][0]/100*modsss,GunPrice[18][0]/100*modsss);
SendClientMessage(playerid, COLOR_GRAD3, gunstring3);
format(gunstring4, 256, "Waffen: Shotgun ($%d) AK47 ($%d) M4 ($%d) Sniper ($%d)",
GunPrice[19][0]/100*modsss,GunPrice[20][0]/100*modsss,GunPrice[21][0]/100*modsss,GunPrice[22][0]/100*modsss,GunPrice[23][0]/100*modsss,GunPrice[24][0]/100*modsss);
SendClientMessage(playerid, COLOR_GRAD3, gunstring4);
format(gunstring5, 256, "Waffen: Pistolen Munition ($%d) Shotgun Munition ($%d) MP5 Munition ($%d) AK47/M4 Munition ($%d) Sniper Munition ($%d)",
GunPrice[25][0],GunPrice[26][0],GunPrice[27][0],GunPrice[28][0],GunPrice[29][0]);
SendClientMessage(playerid, COLOR_GRAD3, gunstring5);
SendClientMessage(playerid, COLOR_GREEN,"_______________________________________");
return 1;
}
strmid(gunid, tmp, 0, strlen(cmdtext), 255);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
format(string, sizeof(string), "BENUTZUNG: /buygun [Waffe] [Munition]");
return 1;
}
new ammo = strval(tmp);
if(ammo < 1 || ammo > 999) { SendClientMessage(playerid, COLOR_GREY, " Die Munition muss zwischen 1 und 999 sein !"); return 1; }
if (strcmp(gunid, "Fallschirm", true, strlen(gunid)) == 0)
{
gun = 46;
guncharge = GunPrice[0][0]/100*modsss;
ammocharge = 0;
}
else if (strcmp(gunid, "Golfschläger", true, strlen(gunid)) == 0)
{
gun = 2; guncharge = GunPrice[1][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 2; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "Schlagstock", true, strlen(gunid)) == 0)
{
gun = 3; guncharge = GunPrice[2][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 3; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "Baseballschläger", true, strlen(gunid)) == 0)
{
gun = 5; guncharge = GunPrice[4][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 5; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "Schaufel", true, strlen(gunid)) == 0)
{
gun = 6; guncharge = GunPrice[5][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 6; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "poolcue", true, strlen(gunid)) == 0)
{
gun = 7; guncharge = GunPrice[6][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 7; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "VioletterDildo", true, strlen(gunid)) == 0)
{
gun = 10; guncharge = GunPrice[7][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 10; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "Weißerdildo", true, strlen(gunid)) == 0)
{
gun = 11; guncharge = GunPrice[8][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 11; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "langerweißerdildo", true, strlen(gunid)) == 0)
{
gun = 12; guncharge = GunPrice[9][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 12; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "weißerdildo2", true, strlen(gunid)) == 0)
{
gun = 13; guncharge = GunPrice[10][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 13; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "Blumen", true, strlen(gunid)) == 0)
{
gun = 14; guncharge = GunPrice[11][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 14; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "cane", true, strlen(gunid)) == 0)
{
gun = 15; guncharge = GunPrice[12][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 15; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "SD-Pistole", true, strlen(gunid)) == 0)
{
gun = 23; guncharge = GunPrice[13][0]/100*modsss; ammocharge = GunPrice[25][0]*ammo;
PlayerInfo[playerid][pGun2] = 23; PlayerInfo[playerid][pAmmo2] = ammo;
}
else if (strcmp(gunid, "DesertEagle", true, strlen(gunid)) == 0)
{
gun = 24; guncharge = GunPrice[15][0]/100*modsss; ammocharge = GunPrice[25][0]*ammo;
PlayerInfo[playerid][pGun2] = 24; PlayerInfo[playerid][pAmmo2] = ammo;
}
else if (strcmp(gunid, "MP5", true, strlen(gunid)) == 0)
{
gun = 29; guncharge = GunPrice[18][0]/100*modsss; ammocharge = GunPrice[27][0]*ammo;
PlayerInfo[playerid][pGun3] = 29; PlayerInfo[playerid][pAmmo3] = ammo;
}
else if (strcmp(gunid, "Shotgun", true, strlen(gunid)) == 0)
{
gun = 25; guncharge = GunPrice[19][0]/100*modsss; ammocharge = GunPrice[26][0]*ammo;
PlayerInfo[playerid][pGun3] = 25; PlayerInfo[playerid][pAmmo3] = ammo;
}
else if (strcmp(gunid, "AK47", true, strlen(gunid)) == 0)
{
gun = 30; guncharge = GunPrice[22][0]/100*modsss; ammocharge = GunPrice[28][0]*ammo;
PlayerInfo[playerid][pGun4] = 30; PlayerInfo[playerid][pAmmo4] = ammo;
}
else if (strcmp(gunid, "M4", true, strlen(gunid)) == 0)
{
gun = 31; guncharge = GunPrice[23][0]/100*modsss; ammocharge = GunPrice[28][0]*ammo;
PlayerInfo[playerid][pGun4] = 31; PlayerInfo[playerid][pAmmo4] = ammo;
}
else if (strcmp(gunid, "Sniper", true, strlen(gunid)) == 0)
{
gun = 34; guncharge = GunPrice[24][0]/100*modsss; ammocharge = GunPrice[29][0]*ammo;
PlayerInfo[playerid][pGun4] = 34; PlayerInfo[playerid][pAmmo4] = ammo;
}
else
{
SendClientMessage(playerid, COLOR_GRAD6, "Ladenbesitzer: Ich habe noch nie von dieser Waffe gehört.");
return 1;
}
if((guncharge+ammocharge) > GetPlayerMoney(playerid))
{
format(infostring, 256, " Du hast keine $%d !",guncharge+ammocharge);
SendClientMessage(playerid, COLOR_GRAD3, infostring);
return 1;
}
if(GetPlayerMoney(playerid) < (guncharge+ammocharge))
{
SendClientMessage(playerid, COLOR_GREY, "Geht nicht !");
return 1;
}
new payout = guncharge + ammocharge;
format(infostring, 256, "Du hast eine %s mit %d Munition für $%d erworben",gunid,ammo,payout);
SendClientMessage(playerid, COLOR_GRAD3, infostring);
GivePlayerMoney(playerid, -payout);
BizzInfo[local-99][bTill] += payout/3;
ExtortionBiz(local-99, payout);
BizzInfo[local-99][bProducts]--;
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
GivePlayerWeapon(playerid, gun, ammo);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "%s hat Waffen für $%d eingekauft im BIZ: %d", sendername, payout, local-99);
printf("%s", string);
PayLog(string);
}
else
{
SendClientMessage(playerid, COLOR_WHITE,"Du bist in keinem Laden.");
return 1;
}
}
}
return 1;
}
Wie soll ich das machen ? ich bin nicht so der Scripter !
So:
if(mats < 1) return SendClientMessage(playerid,DeineFarbe,"Mats dürfen nicht kleiner als 1 sein!");
So:
if(mats < 1) return SendClientMessage(playerid,DeineFarbe,"Mats dürfen nicht kleiner als 1 sein!");
So:
if(mats < 1) return SendClientMessage(playerid,DeineFarbe,"Mats dürfen nicht kleiner als 1 sein!");
Lol den bug kenn ich nicht
Alles anzeigenMoin Moin
Ich habe gerade ein Bug im Ammunation gefunden also wenn man /buygun macht komen die Nachichten und so.
Wenn ich aber eine Waffe oder so kaufe und munnition eingebe krige ich die sachen nicht aber ich verliere mein geld :x
und wenn ich das gekauft habe kommt immer Server : Unknowen Command !
Kann mir einer das Bitte machen , ich bin nicht der Scripter / habe nicht die nötige erfahrung um sowas zu machen !
if (strcmp(cmd, "/buygun", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(IsPlayerInRangeOfPoint(playerid,3.0,290.2523,-106.7863,1001.5156)||
IsPlayerInRangeOfPoint(playerid,3.0,295.4237,-38.1667,1001.5156))
//IsPlayerInRangeOfPoint(playerid,10.0,295.1371,-80.8117,1001.5156))
{
if(PlayerInfo[playerid][pLevel] <= 4)
{
SendClientMessage(playerid, COLOR_RED, "Du musst mindestens Level 5 sein um hier einzukaufen");
return 1;
}
if(GetPlayerMoney(playerid) < 1)
{
SendClientMessage(playerid, COLOR_GREY, "Du hast nicht genug Geld !");
return 1;
}
if(PlayerInfo[playerid][pGunLic] == 0)
{
SendClientMessage(playerid, COLOR_GREY, "Du hast kein Waffenschein !");
return 1;
}
new gun;
new gunid[16];
new gunstring1[256];
new gunstring2[256];
new gunstring3[256];
new gunstring4[256];
new gunstring5[256];
new infostring[256];
new guncharge;
new ammocharge;
new local = PlayerInfo[playerid][pLocal];
if(GetPlayerInterior(playerid) == 1||GetPlayerInterior(playerid) == 6)
//PlayerInfo[playerid][pLocal] == 101 || PlayerInfo[playerid][pLocal] == 102 || PlayerInfo[playerid][pLocal] == 103)
{
/* if(BizzInfo[location-99][bProducts] <= 0)
{
GameTextForPlayer(playerid, "~r~Ausverkauft", 5000, 1);
return 1;
}*/
new modsss = 200;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
format(string, sizeof(string), "Benutzung: /buygun [waffenname] [munition]");
SendClientMessage(playerid, COLOR_GREEN,"_______________________________________");
SendClientMessage(playerid, COLOR_WHITE,"*** Waffen & Munition ***");
SendClientMessage(playerid, COLOR_GRAD2,string);
format(gunstring1, 256, "Waffen: Fallschirm ($%d) Golfschläger ($%d) Schlagstock ($%d) Baseballschläger ($%d) Schaufel ($%d) PoolCue ($%d)",
GunPrice[0][0]/100*modsss,GunPrice[1][0]/100*modsss,GunPrice[2][0]/100*modsss,GunPrice[3][0]/100*modsss,GunPrice[4][0]/100*modsss,GunPrice[5][0]/100*modsss,GunPrice[6][0]/100*modsss);
SendClientMessage(playerid, COLOR_GRAD3, gunstring1);
format(gunstring2, 256, "Waffen: VioletterDildo ($%d) WeißerDildo ($%d) LangerweißerDildo ($%d) WeißerDildo2 ($%d) Blumen ($%d) cane",
GunPrice[7][0]/100*modsss,GunPrice[8][0]/100*modsss,GunPrice[9][0]/100*modsss,GunPrice[10][0]/100*modsss,GunPrice[11][0]/100*modsss,GunPrice[12][0]/100*modsss);
SendClientMessage(playerid, COLOR_GRAD3, gunstring2);
format(gunstring3, 256, "Waffen: SD-Pistole ($%d) DesertEagle ($%d) MP5 ($%d)",
GunPrice[13][0]/100*modsss,GunPrice[14][0]/100*modsss,GunPrice[15][0]/100*modsss,GunPrice[16][0]/100*modsss,GunPrice[17][0]/100*modsss,GunPrice[18][0]/100*modsss);
SendClientMessage(playerid, COLOR_GRAD3, gunstring3);
format(gunstring4, 256, "Waffen: Shotgun ($%d) AK47 ($%d) M4 ($%d) Sniper ($%d)",
GunPrice[19][0]/100*modsss,GunPrice[20][0]/100*modsss,GunPrice[21][0]/100*modsss,GunPrice[22][0]/100*modsss,GunPrice[23][0]/100*modsss,GunPrice[24][0]/100*modsss);
SendClientMessage(playerid, COLOR_GRAD3, gunstring4);
format(gunstring5, 256, "Waffen: Pistolen Munition ($%d) Shotgun Munition ($%d) MP5 Munition ($%d) AK47/M4 Munition ($%d) Sniper Munition ($%d)",
GunPrice[25][0],GunPrice[26][0],GunPrice[27][0],GunPrice[28][0],GunPrice[29][0]);
SendClientMessage(playerid, COLOR_GRAD3, gunstring5);
SendClientMessage(playerid, COLOR_GREEN,"_______________________________________");
return 1;
}
strmid(gunid, tmp, 0, strlen(cmdtext), 255);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
format(string, sizeof(string), "BENUTZUNG: /buygun [Waffe] [Munition]");
return 1;
}
new ammo = strval(tmp);
if(ammo < 1 || ammo > 999) { SendClientMessage(playerid, COLOR_GREY, " Die Munition muss zwischen 1 und 999 sein !"); return 1; }
if (strcmp(gunid, "Fallschirm", true, strlen(gunid)) == 0)
{
gun = 46;
guncharge = GunPrice[0][0]/100*modsss;
ammocharge = 0;
}
else if (strcmp(gunid, "Golfschläger", true, strlen(gunid)) == 0)
{
gun = 2; guncharge = GunPrice[1][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 2; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "Schlagstock", true, strlen(gunid)) == 0)
{
gun = 3; guncharge = GunPrice[2][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 3; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "Baseballschläger", true, strlen(gunid)) == 0)
{
gun = 5; guncharge = GunPrice[4][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 5; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "Schaufel", true, strlen(gunid)) == 0)
{
gun = 6; guncharge = GunPrice[5][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 6; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "poolcue", true, strlen(gunid)) == 0)
{
gun = 7; guncharge = GunPrice[6][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 7; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "VioletterDildo", true, strlen(gunid)) == 0)
{
gun = 10; guncharge = GunPrice[7][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 10; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "Weißerdildo", true, strlen(gunid)) == 0)
{
gun = 11; guncharge = GunPrice[8][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 11; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "langerweißerdildo", true, strlen(gunid)) == 0)
{
gun = 12; guncharge = GunPrice[9][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 12; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "weißerdildo2", true, strlen(gunid)) == 0)
{
gun = 13; guncharge = GunPrice[10][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 13; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "Blumen", true, strlen(gunid)) == 0)
{
gun = 14; guncharge = GunPrice[11][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 14; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "cane", true, strlen(gunid)) == 0)
{
gun = 15; guncharge = GunPrice[12][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 15; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "SD-Pistole", true, strlen(gunid)) == 0)
{
gun = 23; guncharge = GunPrice[13][0]/100*modsss; ammocharge = GunPrice[25][0]*ammo;
PlayerInfo[playerid][pGun2] = 23; PlayerInfo[playerid][pAmmo2] = ammo;
}
else if (strcmp(gunid, "DesertEagle", true, strlen(gunid)) == 0)
{
gun = 24; guncharge = GunPrice[15][0]/100*modsss; ammocharge = GunPrice[25][0]*ammo;
PlayerInfo[playerid][pGun2] = 24; PlayerInfo[playerid][pAmmo2] = ammo;
}
else if (strcmp(gunid, "MP5", true, strlen(gunid)) == 0)
{
gun = 29; guncharge = GunPrice[18][0]/100*modsss; ammocharge = GunPrice[27][0]*ammo;
PlayerInfo[playerid][pGun3] = 29; PlayerInfo[playerid][pAmmo3] = ammo;
}
else if (strcmp(gunid, "Shotgun", true, strlen(gunid)) == 0)
{
gun = 25; guncharge = GunPrice[19][0]/100*modsss; ammocharge = GunPrice[26][0]*ammo;
PlayerInfo[playerid][pGun3] = 25; PlayerInfo[playerid][pAmmo3] = ammo;
}
else if (strcmp(gunid, "AK47", true, strlen(gunid)) == 0)
{
gun = 30; guncharge = GunPrice[22][0]/100*modsss; ammocharge = GunPrice[28][0]*ammo;
PlayerInfo[playerid][pGun4] = 30; PlayerInfo[playerid][pAmmo4] = ammo;
}
else if (strcmp(gunid, "M4", true, strlen(gunid)) == 0)
{
gun = 31; guncharge = GunPrice[23][0]/100*modsss; ammocharge = GunPrice[28][0]*ammo;
PlayerInfo[playerid][pGun4] = 31; PlayerInfo[playerid][pAmmo4] = ammo;
}
else if (strcmp(gunid, "Sniper", true, strlen(gunid)) == 0)
{
gun = 34; guncharge = GunPrice[24][0]/100*modsss; ammocharge = GunPrice[29][0]*ammo;
PlayerInfo[playerid][pGun4] = 34; PlayerInfo[playerid][pAmmo4] = ammo;
}
else
{
SendClientMessage(playerid, COLOR_GRAD6, "Ladenbesitzer: Ich habe noch nie von dieser Waffe gehört.");
return 1;
}
if((guncharge+ammocharge) > GetPlayerMoney(playerid))
{
format(infostring, 256, " Du hast keine $%d !",guncharge+ammocharge);
SendClientMessage(playerid, COLOR_GRAD3, infostring);
return 1;
}
if(GetPlayerMoney(playerid) < (guncharge+ammocharge))
{
SendClientMessage(playerid, COLOR_GREY, "Geht nicht !");
return 1;
}
new payout = guncharge + ammocharge;
format(infostring, 256, "Du hast eine %s mit %d Munition für $%d erworben",gunid,ammo,payout);
SendClientMessage(playerid, COLOR_GRAD3, infostring);
GivePlayerMoney(playerid, -payout);
BizzInfo[local-99][bTill] += payout/3;
ExtortionBiz(local-99, payout);
BizzInfo[local-99][bProducts]--;
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
GivePlayerWeapon(playerid, gun, ammo);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "%s hat Waffen für $%d eingekauft im BIZ: %d", sendername, payout, local-99);
printf("%s", string);
PayLog(string);
}
else
{
SendClientMessage(playerid, COLOR_WHITE,"Du bist in keinem Laden.");
return 1;
}
}
}
return 1;
}
LoL den Bug kenn ich nicht
Wer kann hier ein Fehler erkennen?
if(newkeys & 8192 && Kaufen)//Links
{
if(IsPlayerNPC(playerid))return 1;
new Float:zz[4];
GetPlayerPos(playerid,zz[0],zz[1],zz[2]);
GetPlayerFacingAngle(playerid,zz[3]);
new Nummbberrr = sizeof(Autosss);
if(AutoActive == 0)
{
AutoActive = Nummbberrr;
}
else
{
AutoActive --;
}
new carrr = Autosss[AutoActive][0];
DestroyVehicle(AutoVehicle);
AutoVehicle = CreateVehicle(carrr,zz[0]+2,zz[1]+2,zz[2],zz[3],random(100),random(100),true,3600,-1,0,"Keiner",0.001);
return 1;
}
der jagt mir dauernt ein Runtime Error 4 raus.
Irgendwie kann das nicht sein der hängt an der AutoActive fest, entwerder ist es zu wenig oder zuviel
Wie kommt das zustande??
Wer kann hier ein Fehler erkennen?
Der Runtime Error dazu wäre nicht schlecht.
Array Index ist es glaub ich.
new carrr = Autosss[AutoActive][0];
Denke mal der Fehler liegt dort.
evtl. auch im GetPlayerPos, mit Array.
Am getplayerpos liegt es nicht
der haut mir den Wert zu hoch
komischerweise kommt er auf -1 und über das Maximum
aber ich versteh nicht wiso, da er es eigendlich nicht dürfte
Am getplayerpos liegt es nicht
der haut mir den Wert zu hoch
komischerweise kommt er auf -1 und über das Maximum
aber ich versteh nicht wiso, da er es eigendlich nicht dürfte
new Float:zz[4]; //Das zu Testzwecken mal auf 5 setzen.
da es in einem 3er Array meistens auch nur 0,1,2 Zählt.
komischerweise kommt er auf -1 und über das Maximum
Denn zeig uns mal das Array für diesen Abschnitt:
Autosss[AutoActive][0];
Zudem wies aussieht fehlt bei der If Abfrage auch was:
if(AutoActive[Slot(0?)] == 0)
bei der if Abfrage fehlt nix...
noch nie nen array gesehen?
Autosss[][2]=
{
{560, 2500},
{561, 3000},
{555, 1000}
},
und nein in den ersten klammern kommt nix rein da es sowiso sinnlos ist
Beavis:
new Nummbberrr = sizeof(Autosss);
if(AutoActive == 0)
{
AutoActive = Nummbberrr;
}
else
{
AutoActive --;
}
new carrr = Autosss[AutoActive][0];
wenn die if Abfrage stimmt, dann setzt er AutoActive auf die größe/sizeof von Autosss
Autosss[][2]=
{
{560, 2500},
{561, 3000},
{555, 1000}
};
in dem Fall 3!!!!!!!
Aber 3 ist ein Out of Bounds error, da es nur 0,1,2 gibt(in dem Beispiel)! 3 ist schon zu viel
->
new Nummbberrr = sizeof(Autosss);
if(AutoActive == 0)
{
AutoActive = (Nummbberrr-1);
}
else
{
if(AutoActive > 0) AutoActive --;
}
new carrr = Autosss[AutoActive][0];
Wie kann ich das machen, dass ich ein Callback aufrufen kann, ohne nen Timer zu verwenden?
Also z.B. der Spieler klickt irgendwo drauf und es wird nen Callback abgefragt.
Mit nem stock sollte es klappen.
Hallöschen,
ich bin derzeit am überlegen für jedes Fahrzeug die Tuningteile, Farbe etc in einer Datei zu Speichern.
Ich wollte den Namen der Datei die VehicleID zuweisen.
Würde das ganze den funktionieren oder wird die VehicleID nach einem Restart resetet?
bzw. werden die Dateien dann noch zu den richtigen Fahrzeugen gehören?
Alles anzeigenMoin Moin
Ich habe gerade ein Bug im Ammunation gefunden also wenn man /buygun macht komen die Nachichten und so.
Wenn ich aber eine Waffe oder so kaufe und munnition eingebe krige ich die sachen nicht aber ich verliere mein geld :x
und wenn ich das gekauft habe kommt immer Server : Unknowen Command !
Kann mir einer das Bitte machen , ich bin nicht der Scripter / habe nicht die nötige erfahrung um sowas zu machen !
if (strcmp(cmd, "/buygun", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(IsPlayerInRangeOfPoint(playerid,3.0,290.2523,-106.7863,1001.5156)||
IsPlayerInRangeOfPoint(playerid,3.0,295.4237,-38.1667,1001.5156))
//IsPlayerInRangeOfPoint(playerid,10.0,295.1371,-80.8117,1001.5156))
{
if(PlayerInfo[playerid][pLevel] <= 4)
{
SendClientMessage(playerid, COLOR_RED, "Du musst mindestens Level 5 sein um hier einzukaufen");
return 1;
}
if(GetPlayerMoney(playerid) < 1)
{
SendClientMessage(playerid, COLOR_GREY, "Du hast nicht genug Geld !");
return 1;
}
if(PlayerInfo[playerid][pGunLic] == 0)
{
SendClientMessage(playerid, COLOR_GREY, "Du hast kein Waffenschein !");
return 1;
}
new gun;
new gunid[16];
new gunstring1[256];
new gunstring2[256];
new gunstring3[256];
new gunstring4[256];
new gunstring5[256];
new infostring[256];
new guncharge;
new ammocharge;
new local = PlayerInfo[playerid][pLocal];
if(GetPlayerInterior(playerid) == 1||GetPlayerInterior(playerid) == 6)
//PlayerInfo[playerid][pLocal] == 101 || PlayerInfo[playerid][pLocal] == 102 || PlayerInfo[playerid][pLocal] == 103)
{
/* if(BizzInfo[location-99][bProducts] <= 0)
{
GameTextForPlayer(playerid, "~r~Ausverkauft", 5000, 1);
return 1;
}*/
new modsss = 200;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
format(string, sizeof(string), "Benutzung: /buygun [waffenname] [munition]");
SendClientMessage(playerid, COLOR_GREEN,"_______________________________________");
SendClientMessage(playerid, COLOR_WHITE,"*** Waffen & Munition ***");
SendClientMessage(playerid, COLOR_GRAD2,string);
format(gunstring1, 256, "Waffen: Fallschirm ($%d) Golfschläger ($%d) Schlagstock ($%d) Baseballschläger ($%d) Schaufel ($%d) PoolCue ($%d)",
GunPrice[0][0]/100*modsss,GunPrice[1][0]/100*modsss,GunPrice[2][0]/100*modsss,GunPrice[3][0]/100*modsss,GunPrice[4][0]/100*modsss,GunPrice[5][0]/100*modsss,GunPrice[6][0]/100*modsss);
SendClientMessage(playerid, COLOR_GRAD3, gunstring1);
format(gunstring2, 256, "Waffen: VioletterDildo ($%d) WeißerDildo ($%d) LangerweißerDildo ($%d) WeißerDildo2 ($%d) Blumen ($%d) cane",
GunPrice[7][0]/100*modsss,GunPrice[8][0]/100*modsss,GunPrice[9][0]/100*modsss,GunPrice[10][0]/100*modsss,GunPrice[11][0]/100*modsss,GunPrice[12][0]/100*modsss);
SendClientMessage(playerid, COLOR_GRAD3, gunstring2);
format(gunstring3, 256, "Waffen: SD-Pistole ($%d) DesertEagle ($%d) MP5 ($%d)",
GunPrice[13][0]/100*modsss,GunPrice[14][0]/100*modsss,GunPrice[15][0]/100*modsss,GunPrice[16][0]/100*modsss,GunPrice[17][0]/100*modsss,GunPrice[18][0]/100*modsss);
SendClientMessage(playerid, COLOR_GRAD3, gunstring3);
format(gunstring4, 256, "Waffen: Shotgun ($%d) AK47 ($%d) M4 ($%d) Sniper ($%d)",
GunPrice[19][0]/100*modsss,GunPrice[20][0]/100*modsss,GunPrice[21][0]/100*modsss,GunPrice[22][0]/100*modsss,GunPrice[23][0]/100*modsss,GunPrice[24][0]/100*modsss);
SendClientMessage(playerid, COLOR_GRAD3, gunstring4);
format(gunstring5, 256, "Waffen: Pistolen Munition ($%d) Shotgun Munition ($%d) MP5 Munition ($%d) AK47/M4 Munition ($%d) Sniper Munition ($%d)",
GunPrice[25][0],GunPrice[26][0],GunPrice[27][0],GunPrice[28][0],GunPrice[29][0]);
SendClientMessage(playerid, COLOR_GRAD3, gunstring5);
SendClientMessage(playerid, COLOR_GREEN,"_______________________________________");
return 1;
}
strmid(gunid, tmp, 0, strlen(cmdtext), 255);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
format(string, sizeof(string), "BENUTZUNG: /buygun [Waffe] [Munition]");
return 1;
}
new ammo = strval(tmp);
if(ammo < 1 || ammo > 999) { SendClientMessage(playerid, COLOR_GREY, " Die Munition muss zwischen 1 und 999 sein !"); return 1; }
if (strcmp(gunid, "Fallschirm", true, strlen(gunid)) == 0)
{
gun = 46;
guncharge = GunPrice[0][0]/100*modsss;
ammocharge = 0;
}
else if (strcmp(gunid, "Golfschläger", true, strlen(gunid)) == 0)
{
gun = 2; guncharge = GunPrice[1][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 2; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "Schlagstock", true, strlen(gunid)) == 0)
{
gun = 3; guncharge = GunPrice[2][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 3; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "Baseballschläger", true, strlen(gunid)) == 0)
{
gun = 5; guncharge = GunPrice[4][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 5; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "Schaufel", true, strlen(gunid)) == 0)
{
gun = 6; guncharge = GunPrice[5][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 6; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "poolcue", true, strlen(gunid)) == 0)
{
gun = 7; guncharge = GunPrice[6][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 7; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "VioletterDildo", true, strlen(gunid)) == 0)
{
gun = 10; guncharge = GunPrice[7][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 10; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "Weißerdildo", true, strlen(gunid)) == 0)
{
gun = 11; guncharge = GunPrice[8][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 11; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "langerweißerdildo", true, strlen(gunid)) == 0)
{
gun = 12; guncharge = GunPrice[9][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 12; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "weißerdildo2", true, strlen(gunid)) == 0)
{
gun = 13; guncharge = GunPrice[10][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 13; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "Blumen", true, strlen(gunid)) == 0)
{
gun = 14; guncharge = GunPrice[11][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 14; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "cane", true, strlen(gunid)) == 0)
{
gun = 15; guncharge = GunPrice[12][0]/100*modsss; ammocharge = 0;
PlayerInfo[playerid][pGun1] = 15; PlayerInfo[playerid][pAmmo1] = 1;
}
else if (strcmp(gunid, "SD-Pistole", true, strlen(gunid)) == 0)
{
gun = 23; guncharge = GunPrice[13][0]/100*modsss; ammocharge = GunPrice[25][0]*ammo;
PlayerInfo[playerid][pGun2] = 23; PlayerInfo[playerid][pAmmo2] = ammo;
}
else if (strcmp(gunid, "DesertEagle", true, strlen(gunid)) == 0)
{
gun = 24; guncharge = GunPrice[15][0]/100*modsss; ammocharge = GunPrice[25][0]*ammo;
PlayerInfo[playerid][pGun2] = 24; PlayerInfo[playerid][pAmmo2] = ammo;
}
else if (strcmp(gunid, "MP5", true, strlen(gunid)) == 0)
{
gun = 29; guncharge = GunPrice[18][0]/100*modsss; ammocharge = GunPrice[27][0]*ammo;
PlayerInfo[playerid][pGun3] = 29; PlayerInfo[playerid][pAmmo3] = ammo;
}
else if (strcmp(gunid, "Shotgun", true, strlen(gunid)) == 0)
{
gun = 25; guncharge = GunPrice[19][0]/100*modsss; ammocharge = GunPrice[26][0]*ammo;
PlayerInfo[playerid][pGun3] = 25; PlayerInfo[playerid][pAmmo3] = ammo;
}
else if (strcmp(gunid, "AK47", true, strlen(gunid)) == 0)
{
gun = 30; guncharge = GunPrice[22][0]/100*modsss; ammocharge = GunPrice[28][0]*ammo;
PlayerInfo[playerid][pGun4] = 30; PlayerInfo[playerid][pAmmo4] = ammo;
}
else if (strcmp(gunid, "M4", true, strlen(gunid)) == 0)
{
gun = 31; guncharge = GunPrice[23][0]/100*modsss; ammocharge = GunPrice[28][0]*ammo;
PlayerInfo[playerid][pGun4] = 31; PlayerInfo[playerid][pAmmo4] = ammo;
}
else if (strcmp(gunid, "Sniper", true, strlen(gunid)) == 0)
{
gun = 34; guncharge = GunPrice[24][0]/100*modsss; ammocharge = GunPrice[29][0]*ammo;
PlayerInfo[playerid][pGun4] = 34; PlayerInfo[playerid][pAmmo4] = ammo;
}
else
{
SendClientMessage(playerid, COLOR_GRAD6, "Ladenbesitzer: Ich habe noch nie von dieser Waffe gehört.");
return 1;
}
if((guncharge+ammocharge) > GetPlayerMoney(playerid))
{
format(infostring, 256, " Du hast keine $%d !",guncharge+ammocharge);
SendClientMessage(playerid, COLOR_GRAD3, infostring);
return 1;
}
if(GetPlayerMoney(playerid) < (guncharge+ammocharge))
{
SendClientMessage(playerid, COLOR_GREY, "Geht nicht !");
return 1;
}
new payout = guncharge + ammocharge;
format(infostring, 256, "Du hast eine %s mit %d Munition für $%d erworben",gunid,ammo,payout);
SendClientMessage(playerid, COLOR_GRAD3, infostring);
GivePlayerMoney(playerid, -payout);
BizzInfo[local-99][bTill] += payout/3;
ExtortionBiz(local-99, payout);
BizzInfo[local-99][bProducts]--;
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
GivePlayerWeapon(playerid, gun, ammo);
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "%s hat Waffen für $%d eingekauft im BIZ: %d", sendername, payout, local-99);
printf("%s", string);
PayLog(string);
}
else
{
SendClientMessage(playerid, COLOR_WHITE,"Du bist in keinem Laden.");
return 1;
}
}
}
return 1;
}
Weis das wirklich keiner ?
Bitte ich brauche hilfe
Würde das ganze den funktionieren oder wird die VehicleID nach einem Restart resetet?
bzw. werden die Dateien dann noch zu den richtigen Fahrzeugen gehören?
per Vehicleid ist es schlecht zu machen, denn die können sich immer verändern...
Speicher das Tuning direkt in der Auto datei, denn viel aufwand ist das nicht
Ich hab das so gemacht:
for(new slot; slot<14; slot++)
{
VehicleData[i][Tuning][slot] = GetVehicleComponentInSlot(i,slot);//i ist das Auto selber
format(query,20,",`Slot%d`='%d'",slot,VehicleData[i][Tuning][slot]);
strcat(Data,query);
}
das selbe auch beim Laden
schnell einfach und es gibt keine Probleme
ZitatSpeicher das Tuning direkt in der Auto datei, denn viel aufwand ist das nicht
Seid wann gibt es eine "Auto Datei"?
Wenn der Server Restartet wird muss ich es ja in einer Datei Speichern (ich denke das meinst du mit Auto Datei)
aber wie sorge ich dafür das er nach dem Restart die richtige Datei dem richtigen Auto zuweisen kann?
VehicleData[i][Tuning][slot] = GetVehicleComponentInSlot(i,slot);//i ist das Auto selber
so Speichert er es doch nur bis zum Server Restart, oder nicht?
so Speichert er es doch nur bis zum Server Restart, oder nicht?
Ich schreibe es direkt in die Datenbank, da bei mir im Script keine Autos zu finden sind
Ich dachte jetzt, das du sowas für dein Autosystem brauchst^^
Aber per vehicleid... kann man schlecht vorraussagen ob das richtige wieder kommt das die selbe id hat
//nachtrag
Wiso kann ich das Textdraw nicht anklicken?
Zhaaahh[2] = TextDrawCreate(236.000000, 143.000000, "Informationen");
TextDrawBackgroundColor(Zhaaahh[2], 255);
TextDrawFont(Zhaaahh[2], 0);
TextDrawLetterSize(Zhaaahh[2], 0.659999, 1.900000);
TextDrawColor(Zhaaahh[2], -1);
TextDrawSetOutline(Zhaaahh[2], 0);
TextDrawSetProportional(Zhaaahh[2], 1);
TextDrawSetShadow(Zhaaahh[2], 1);
TextDrawTextSize(Zhaaahh[2], 236, 143.0);
TextDrawSetSelectable(Zhaaahh[2], true);
Hi Breadfish,
Eventuell kann mir hier jemand helfen. Wie kann man Grafiken im Server anzeigen lassen?