C:\Users\Plyer\Desktop\mysql\gamemodes\dmmm.pwn(114) : error 032: array index out of bounds (variable "PBSpawns")
new Float:PBSpawns[11][3] =
{
{-993.0566,1096.4937,1342.9464},//1
{-1024.9197,1059.3832,1343.2831},//2
{-1055.7239,1050.5612,1343.3032},
{-1088.8763,1027.2328,1342.7892},
{-1099.3173,1073.2480,1342.3147},
{-1133.0546,1057.9266,1346.4094},
{-1127.5370,1025.4127,1345.7003},
{-1134.2419,1098.6616,1345.8112},
{-1063.2407,1042.1263,1348.1604},
{-1042.0015,1072.2975,1347.5913},
{-1021.2032,1073.9462,1346.8038}
};
114 ist SetPlayerPos
public OnPlayerSpawn(playerid)
{
if(isPlayerInArea(playerid,1))
{
new Paintballspawn;
Paintballspawn = random(sizeof(PBSpawns));
SetPlayerPos(playerid,PBSpawns[Paintballspawn][0],PBSpawns[Paintballspawn][1],PBSpawns[Paintballspawn][2],PBSpawns[Paintballspawn][3],PBSpawns[Paintballspawn][4],PBSpawns[Paintballspawn][5],PBSpawns[Paintballspawn][6]
,PBSpawns[Paintballspawn][7],PBSpawns[Paintballspawn][8],PBSpawns[Paintballspawn][9],PBSpawns[Paintballspawn][10]);
return 1;
}
}
Random spawns fehler
- SAB0h
- Geschlossen
- Erledigt
-
-
SetPlayerPos(playerid,PBSpawns[Paintballspawn][0],PBSpawns[Paintballspawn][1],PBSpawns[Paintballspawn][2]);
Du hast mehr Parameter verwendet als Größe im Index des Array stand.
SetPlayerPos(playerid,x,y,z);
Mehr brauchst du nicht.
-
ya & wie änder ich das damit ich mehr spawns habe ?
-
einfach das Array erweitern.
Jede reihe ist ein Spawn, mit jeweils x,y & z Koordinate zum spawnen. -
Ich vergleiche einen Array gerne mit einer Tabelle, weil es Optisch und Strukturell dazu passt.
Dein erster Index besagt das er 11 Datensätze (Zeilen) hat, dass entspricht deinen 11 Koordinaten. Willst du mehr Koordinaten hinzufügen brauchst du nur den Index ändern.
Dein zweiter Index gibt sozusagen die Spalten an. Du hast hier 3 angegeben, weil du bei Koordinaten ja nur X - Y und Z speichern willst. -
breadfish.de
Hat das Thema geschlossen.