Also ich suche ein script der alle kägeln in SA wegmacht.
und ich will ein Waffen-shop machen nicht die normalen sondern per befehl z.b /buy mp5 99 = 500$
Also ich suche ein script der alle kägeln in SA wegmacht.
und ich will ein Waffen-shop machen nicht die normalen sondern per befehl z.b /buy mp5 99 = 500$
Zu dem mit den Kegeln:
//OnGameModeINit:
DisableInteriorEnterExists();
Das mit dem "/buy"
Dafür müsste man jetzt wissen wie du Parameter ausliest (dcmd, strtok, strget, sscanf)
danke erstmal...
aber da kommt ein fehler
error 017: undefined symbol "DisableInteriorEnterExists"
ehmm
dcmd , strtok , strget ,sscanf
ich will das z.b aneinem I-punkt mit /buygun [waffen name ] [munition]
keks meinte wie du deine cmds aufgebaut hast also mit dcmd , strtok , strget oder sscanf das ist wichtig da alle anders funktionieren
Am besten wäre es wenn du ein cmd der so änlich aufgebaut ist mal hier hoch stellest oder selbst um änderst
also ich habe immer so gemacht z.B
if(!strcmp(cmdtext, "/vg",true))
{
SetPlayerPos(playerid,2419.4458,-1231.2256,24.5707);
GivePlayerWeapon(playerid,29,999);
SetPlayerSkin(playerid,108);
SetPlayerColor(playerid, 0xFFFF00AA);
SetPlayerHealth(playerid,100);
SetPlayerArmour(playerid,100);
return 1;
Der Error kann eig nicht kommen, du musst es genau so einfügen in OnGameModeInit:
DisableInteriorEnterExits();
Und das mit nem Punkt und buygun, dafür müsste ich wissen, wie du Parameter ausliest, sonst bau ich dir da i-nen Code und der ist nicht kompatibel mit deim Script, aber egal, ich versuchs einfach mal auf gut Glück:
//OnPlayerCommandText:
dcmd(buygun,6,cmdtext);
//außerhalb eines callbacks:
dcmd_buygun(playerid,params[]) {
if(!strlen(strget(params,1))) return SendClientMessage(playerid,FARBE,"/buygun Waffe Munition");
new wid, geht, i, s[128]=strget(params,0)), st=strlen(s), waffennamen[][]= {
"Schlagring", "Golfschläger", "Schlagstock", "Messer", "Baseball Schläger", "Schaufel",
"Billiard Schläger", "Katana", "Kettensäge", "Dildo", "Dildo", "Dildo", "Dildo", "Blumen",
"Stock", "Granate", "Rauchgranate", "Molotov Cocktail", " ", " ", " ", "9mm", "Schallgedämpfte 9mm",
"Deagle", "Schrotflinte", "Abgesägte Schrotflinte", "SPAZ-12", "Mac10", "Mp5", "Ak47", "M4", "Tec9",
"Gewehr", "Sniper", "Raketenwerfer", "Skorpion", "Flammenwerfer", "Minigun", "Rucksackbombe",
"Zünder", "Pfefferspray", "Feuerlöscher", "Kamera", "Nachtsichtgerät", "Infrarotbrille",
"Fallschirm" };
for(; i<st; i++) {
if((params[i]<0 || params[i]>9) && params[i]!=' ') {
geht=1; }}
if(geht) {
for(i=0, st=sizeof(waffennamen); i<st; i++) {
if(strfind(s,waffennamen[i],true)==0) {
wid=i+1; }}}
else { wid=strval(s); }
st=strval(strget(params,1));
if(st>=1 && st<=10000) {
GivePlayerWeapon(playerid,wid,st); }
return 1;
}
warning 217: loose indentation
error 017: undefined symbol "dcmd"
warning 203: symbol is never used: "dcmd_buygun"
mach oben in dein skript
#pragma tabsize 0
#define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
C:\Dokumente und Einstellungen\XX\Desktop\Neuer Ordner (15)\samp\gamemodes\Stuntdmgangs.pwn(5983) : error 017: undefined symbol "strget"
C:\Dokumente und Einstellungen\XX\Desktop\Neuer Ordner (15)\samp\gamemodes\Stuntdmgangs.pwn(5983) : error 017: undefined symbol "FARBE"
C:\Dokumente und Einstellungen\XX\Desktop\Neuer Ordner (15)\samp\gamemodes\Stuntdmgangs.pwn(5984) : error 017: undefined symbol "strget"
C:\Dokumente und Einstellungen\XX\Desktop\Neuer Ordner (15)\samp\gamemodes\Stuntdmgangs.pwn(5984) : error 029: invalid expression, assumed zero
C:\Dokumente und Einstellungen\XX\Desktop\Neuer Ordner (15)\samp\gamemodes\Stuntdmgangs.pwn(5984) : error 017: undefined symbol "waffennamen"
C:\Dokumente und Einstellungen\XX\Desktop\Neuer Ordner (15)\samp\gamemodes\Stuntdmgangs.pwn(5984) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
6 Errors.
stock strget(strx[], pos, search = ' ') {
new arg, ret[128], idxx;
for (new i = 0; i < strlen(strx); i++) {
if(strx[i] == search || i == strlen(strx) || strx[i + 1] == 10) {
arg++;
if (arg == pos + 1){
ret[i-idxx] = EOS;
return ret;
} else if (arg == pos)
idxx= i+1;
}
else if (arg == pos)
ret[i - idxx] = strx[i];
}
return ret;
}
Irgendwo ins script damit sind die strget errors weg und das mit FARBE solltest du wohl alleine hinbekommen oder bist du wirklich so unerfahren???
PS: falls du das mit FARBE nich hin bekommst:
danke das habe ich schon ich habe noch ein problem
C:\Dokumente und Einstellungen\XXX\Desktop\Neuer Ordner (15)\samp\gamemodes\Stuntdmgangs.pwn(5984) : error 008: must be a constant expression; assumed zero
C:\Dokumente und Einstellungen\XXX\Desktop\Neuer Ordner (15)\samp\gamemodes\Stuntdmgangs.pwn(5984) : error 029: invalid expression, assumed zero
C:\Dokumente und Einstellungen\XXX\Desktop\Neuer Ordner (15)\samp\gamemodes\Stuntdmgangs.pwn(5984) : error 017: undefined symbol "waffennamen"
C:\Dokumente und Einstellungen\XXX\Desktop\Neuer Ordner (15)\samp\gamemodes\Stuntdmgangs.pwn(5984) : fatal error 107: too many error messages on one line
also bei waffenname ?? was soll ich da machen die namen stehen doch schon im script