Hallo Community,
habe ein kleines Problem.
Zum Testen habe ich folgendes in meinem Filterscript erstellt, was aber komischerweise nicht funktioniert:
Die zwei Enums:
enum SBLimits1
{
Mats,Drogen,Deagle,M4,MP5,Shotgun,Rifle,
}
new SBLimits[25][11][SBLimits1];
enum SBErreicht1
{
Mats,Drogen,Deagle,M4,MP5,Shotgun,Rifle,
}
new SBErreicht[MAX_PLAYERS][SBErreicht1];
public OnPlayerConnect(playerid)
{
PlayerInfo[playerid][pLeader] = 24;
GangID[playerid] = 24;
PlayerInfo[playerid][pRank] = 11;
SBErreicht[playerid][Mats] = 3;
SBLimits[GangID[playerid]][PlayerInfo[playerid][pRank]][Mats] = 10;
return 1;
}
if(strcmp(cmdtext, "/limit") == 0)
{
new sblimit[50];
format(sblimit,sizeof(sblimit),"Mats: %i von %i",SBErreicht[playerid][Mats],SBLimits[GangID[playerid]][PlayerInfo[playerid][pRank]][Mats]);
SendClientMessage(playerid, 0xDEEE20FF , sblimit);
return 1;
}
Müsste doch eigentlich alles funktionieren...
Ich hoffe jemand von euch findet den Fehler!
-
-
enum SBLimits1
{
Mats,
Drogen,
Deagle,
M4,
MP5,
Shotgun,
Rifle
};
new SBLimits[25][11][SBLimits1];
enum SBErreicht1
{
Mats,
Drogen,
Deagle,
M4,
MP5,
Shotgun,
Rifle
};
new SBErreicht[MAX_PLAYERS][SBErreicht1]; -
Geht leider trotzem nicht!
LimitL[playerid] = strval(inputtext);
new SBLE[70];
format(SBLE, sizeof(SBLE), "%s - %s - Rank %i - Limit: %i/24h", Gangname[GangID[playerid]], ItemSBL[playerid], RankL[playerid], LimitL[playerid]);
SendClientMessage(playerid, 0xDEEE20FF , SBLE);
SBLimits[GangID[playerid]][RankL[playerid]][ItemSBL[playerid]] = LimitL[playerid];
DAS Zeigt er richtig an:
LS.Vagos - Mats - Rank 11 - Limit: 10/24hAber das Problem ist, dass er das nicht setzt -.-
Hab irgendwie gelesen, dass es Probleme mit Enums gibt, wo man sowas wie "ItemSBL[playerid]" reinpackt!
Wie soll das sonst gehen?
Ich will nicht, dass dieser lange Arbeitsaufwand vernichtet wird ...Edit:
Hier nochwas:
new ItemSBL[MAX_PLAYERS][20];
Die Zeile:
SBLimits[GangID[playerid]][RankL[playerid]][ItemSBL[playerid]] = LimitL[playerid];
Dieser Error:
error 033: array must be indexed (variable "ItemSBL")
Ist ein String!Langsam reicht es mir mit dem Müll -.-
LimitL[playerid] = strval(inputtext);
new SBLE[70];
format(SBLE, sizeof(SBLE), "%s - %s - Rank %i - Limit: %i/24h", Gangname[GangID[playerid]], ItemSBL[playerid], RankL[playerid], LimitL[playerid]);
SendClientMessage(playerid, 0xDEEE20FF , SBLE);
new sbitem[20];
format(sbitem, sizeof(sbitem), "%s", ItemSBL[playerid]);
if(!strcmp(sbitem, "Mats", true, 4)){
SBLimits[GangID[playerid]][RankL[playerid]][Mats] = LimitL[playerid];
SendClientMessage(playerid, 0xDEEE20FF , "TEST");
return 1;
}
else
{
SendClientMessage(playerid, 0xDEEE20FF , "klappt nicht!");
new SBLUE[70];
format(SBLUE, sizeof(SBLUE), "Savebox - %s - Optionen - %s", Gangname[GangID[playerid]], ItemSBL[playerid]);
ShowPlayerDialog(playerid, SBD40, DIALOG_STYLE_INPUT, SBLUE, "Für welchen Rank soll ein Limit gesetzt werden?", "Weiter", "Abbrechen");
return 1;
}
Das letzte was der macht ist das SendClientMessage in der 4. Zeile!
Das strcmp und das else ist verschwunden, nichts passiert danach -.- -
breadfish.de
Hat das Thema geschlossen.