Inventory System Problem.
#1

Having a problem with inventory system can anyone help? This script was working when I only had 5 item name's saving and / loading in the string.

Код:

C:\Users\nathan\Desktop\Jueix's Roleplay\gamemodes\J-RP.pwn(509) : error 075: input line too long (after substitutions)
C:\Users\nathan\Desktop\Jueix's Roleplay\gamemodes\J-RP.pwn(750) : error 032: array index out of bounds (variable "InventoryInfo")
C:\Users\nathan\Desktop\Jueix's Roleplay\gamemodes\J-RP.pwn(750) : warning 215: expression has no effect
C:\Users\nathan\Desktop\Jueix's Roleplay\gamemodes\J-RP.pwn(750) : error 001: expected token: ";", but found ")"
C:\Users\nathan\Desktop\Jueix's Roleplay\gamemodes\J-RP.pwn(750) : error 029: invalid expression, assumed zero
C:\Users\nathan\Desktop\Jueix's Roleplay\gamemodes\J-RP.pwn(750) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


5 Errors.
Code
pawn Код:
//enum

enum iInfo
{
    pSlotUsed[15],
    pItems[15],
    pItemsAmmo[15],
    pItem1Name[128],
    pItem2Name[128],
    pItem3Name[128],
    pItem4Name[128],
    pItem5Name[128],
    pItem6Name[128],
    pItem7Name[128],
    pItem8Name[128],
    pItem9Name[128],
    pItem10Name[128],
    pItem11Name[128],
    pItem12Name[128],
    pItem13Name[128],
    pItem14Name[128],
    pItem15Name[128]
};
new InventoryInfo[MAX_PLAYERS][iInfo];

//the string
new string[256];
            format(string, sizeof(string), "1:%s\n2:%s\n3:%s\n4:%s\n5:%s\n6:%s\n7:%s\n8:%s\n9:%s\n10:%s\n11:%s\n12:%s\n13:%s\n14:%s\n15:%s", InventoryInfo[playerid][pItem1Name],InventoryInfo[playerid][pItem2Name],InventoryInfo[playerid][pItem3Name],InventoryInfo[playerid][pItem4Name],InventoryInfo[playerid][pItem5Name],InventoryInfo[playerid][pItem6Name],InventoryInfo[playerid][pItem7Name],InventoryInfo[playerid][pItem8Name],InventoryInfo[playerid][pItem9Name],InventoryInfo[playerid][pItem10Name],InventoryInfo[playerid][pItem11Name],InventoryInfo[playerid][pItem12Name],InventoryInfo[playerid][pItem13Name],InventoryInfo[playerid][pItem14Name],InventoryInfo[playerid][pItem15Name]);
Reply
#2

Quote:
Originally Posted by jueix
Посмотреть сообщение
Having a problem with inventory system can anyone help? This script was working when I only had 5 item name's saving and / loading in the string.

Код:

C:\Users\nathan\Desktop\Jueix's Roleplay\gamemodes\J-RP.pwn(509) : error 075: input line too long (after substitutions)
C:\Users\nathan\Desktop\Jueix's Roleplay\gamemodes\J-RP.pwn(750) : error 032: array index out of bounds (variable "InventoryInfo")
C:\Users\nathan\Desktop\Jueix's Roleplay\gamemodes\J-RP.pwn(750) : warning 215: expression has no effect
C:\Users\nathan\Desktop\Jueix's Roleplay\gamemodes\J-RP.pwn(750) : error 001: expected token: ";", but found ")"
C:\Users\nathan\Desktop\Jueix's Roleplay\gamemodes\J-RP.pwn(750) : error 029: invalid expression, assumed zero
C:\Users\nathan\Desktop\Jueix's Roleplay\gamemodes\J-RP.pwn(750) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


5 Errors.
Code
pawn Код:
//enum

enum iInfo
{
    pSlotUsed[15],
    pItems[15],
    pItemsAmmo[15],
    pItem1Name[128],
    pItem2Name[128],
    pItem3Name[128],
    pItem4Name[128],
    pItem5Name[128],
    pItem6Name[128],
    pItem7Name[128],
    pItem8Name[128],
    pItem9Name[128],
    pItem10Name[128],
    pItem11Name[128],
    pItem12Name[128],
    pItem13Name[128],
    pItem14Name[128],
    pItem15Name[128]
};
new InventoryInfo[MAX_PLAYERS][iInfo];

//the string
new string[256];
            format(string, sizeof(string), "1:%s\n2:%s\n3:%s\n4:%s\n5:%s\n6:%s\n7:%s\n8:%s\n9:%s\n10:%s\n11:%s\n12:%s\n13:%s\n14:%s\n15:%s", InventoryInfo[playerid][pItem1Name],InventoryInfo[playerid][pItem2Name],InventoryInfo[playerid][pItem3Name],InventoryInfo[playerid][pItem4Name],InventoryInfo[playerid][pItem5Name],InventoryInfo[playerid][pItem6Name],InventoryInfo[playerid][pItem7Name],InventoryInfo[playerid][pItem8Name],InventoryInfo[playerid][pItem9Name],InventoryInfo[playerid][pItem10Name],InventoryInfo[playerid][pItem11Name],InventoryInfo[playerid][pItem12Name],InventoryInfo[playerid][pItem13Name],InventoryInfo[playerid][pItem14Name],InventoryInfo[playerid][pItem15Name]);
do not use the code as long, that is why it does not work and gives errors
Use this..
pawn Код:
new string[256] ,str[256];

format(string, sizeof(string), "1:%s\n2:%s\n3:%s\n4:%s\n5:%s\n6:%s\n7:%s\n8:%s\n9:%s\n10:%s",InventoryInfo[playerid][pItem1Name],InventoryInfo[playerid][pItem2Name],InventoryInfo[playerid][pItem3Name],InventoryInfo[playerid][pItem4Name],InventoryInfo[playerid][pItem5Name],InventoryInfo[playerid][pItem6Name],InventoryInfo[playerid][pItem7Name],InventoryInfo[playerid][pItem8Name],InventoryInfo[playerid][pItem9Name],InventoryInfo[playerid][pItem10Name]);
format(str, sizeof(str), "\n11:%s\n12:%s\n13:%s\n14:%s\n15:%s", InventoryInfo[playerid][pItem11Name],InventoryInfo[playerid][pItem12Name],InventoryInfo[playerid][pItem13Name],InventoryInfo[playerid][pItem14Name],InventoryInfo[playerid][pItem15Name]);
Reply
#3

Quote:
Originally Posted by juandiegox
Посмотреть сообщение
do not use the code as long, that is why it does not work and gives errors
Use this..
pawn Код:
new string[256] ,str[256];

format(string, sizeof(string), "1:%s\n2:%s\n3:%s\n4:%s\n5:%s\n6:%s\n7:%s\n8:%s\n9:%s\n10:%s",InventoryInfo[playerid][pItem1Name],InventoryInfo[playerid][pItem2Name],InventoryInfo[playerid][pItem3Name],InventoryInfo[playerid][pItem4Name],InventoryInfo[playerid][pItem5Name],InventoryInfo[playerid][pItem6Name],InventoryInfo[playerid][pItem7Name],InventoryInfo[playerid][pItem8Name],InventoryInfo[playerid][pItem9Name],InventoryInfo[playerid][pItem10Name]);
format(str, sizeof(str), "\n11:%s\n12:%s\n13:%s\n14:%s\n15:%s", InventoryInfo[playerid][pItem11Name],InventoryInfo[playerid][pItem12Name],InventoryInfo[playerid][pItem13Name],InventoryInfo[playerid][pItem14Name],InventoryInfo[playerid][pItem15Name]);
or simply use strcat function...
Reply
#4

Quote:
Originally Posted by juandiegox
Посмотреть сообщение
do not use the code as long, that is why it does not work and gives errors
Use this..
pawn Код:
new string[256] ,str[256];

format(string, sizeof(string), "1:%s\n2:%s\n3:%s\n4:%s\n5:%s\n6:%s\n7:%s\n8:%s\n9:%s\n10:%s",InventoryInfo[playerid][pItem1Name],InventoryInfo[playerid][pItem2Name],InventoryInfo[playerid][pItem3Name],InventoryInfo[playerid][pItem4Name],InventoryInfo[playerid][pItem5Name],InventoryInfo[playerid][pItem6Name],InventoryInfo[playerid][pItem7Name],InventoryInfo[playerid][pItem8Name],InventoryInfo[playerid][pItem9Name],InventoryInfo[playerid][pItem10Name]);
format(str, sizeof(str), "\n11:%s\n12:%s\n13:%s\n14:%s\n15:%s", InventoryInfo[playerid][pItem11Name],InventoryInfo[playerid][pItem12Name],InventoryInfo[playerid][pItem13Name],InventoryInfo[playerid][pItem14Name],InventoryInfo[playerid][pItem15Name]);
How will I put that into a dialog like both the strings?
Reply
#5

Quote:
Originally Posted by jueix
Посмотреть сообщение
How will I put that into a dialog like both the strings?
pawn Код:
ShowPlayerDialog(playerid, YOU DIALOG, DIALOG STYLE YOU LIKE, "Tittle", string, "ok", "");
Reply
#6

Quote:
Originally Posted by juandiegox
Посмотреть сообщение
pawn Код:
ShowPlayerDialog(playerid, YOU DIALOG, DIALOG STYLE YOU LIKE, "Tittle", string, "ok", "");
You have to use strcat. That won't even work.
Reply
#7

Quote:
Originally Posted by iZN
Посмотреть сообщение
You have to use strcat. That won't even work.
if the function only uses that will bring problems and errors, better let me use the format, and if it does not you will notice that you do not need what you say.
Reply
#8

I found a way, Thanks for the help guys.
Reply
#9

Quote:
pawn Код:
pItemsAmmo[15],
    pItem1Name[128],
    pItem2Name[128],
    pItem3Name[128],
    pItem4Name[128],
    pItem5Name[128],
    pItem6Name[128],
    pItem7Name[128],
    pItem8Name[128],
    pItem9Name[128],
    pItem10Name[128],
    pItem11Name[128],
    pItem12Name[128],
    pItem13Name[128],
    pItem14Name[128],
    pItem15Name[128]
This code is terrible and ugly, you should use a single variable for the name with a size/amount, easier to loop through.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)