Jump to content
Geplaatst:
comment_1291445

hallo,

in het volgende stuk script krijg ik 2 warnings:

public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == MainHallEnter)
{
GameTextForPlayer(playerid, "Type /enter to enter the main hall.", 3000, 3);
return 1;
}
if(pickupid == MainHallExit)
{
GameTextForPlayer(playerid, "Type /exit to exit the main hall.", 3000, 3);
return 1;
}
return 0;
}

en dit zijn de warnings:

C:\Users\thuron\Desktop\SIR server\gamemodes\SIRRP.pwn(513) : warning 206: redundant test: constant expression is non-zero
C:\Users\thuron\Desktop\SIR server\gamemodes\SIRRP.pwn(518) : warning 206: redundant test: constant expression is non-zero
Pawn compiler 3.2.3664	 Copyright (c) 1997-2006, ITB CompuPhase


2 Warnings.

de regels verwijzen naar dit:

if(pickupid == MainHallEnter)

en dit:

if(pickupid == MainHallExit)

weet iemand hoe ik die fouten eruit kan halen?

alvast bedankt

Featured Replies

Geplaatst:
  • Auteur
comment_1293015

hmm, ik heb het precies zoals jou ingevoerd. maar ik krijg dit:

C:\Users\thuron\Desktop\SIR server\gamemodes\SIRRP.pwn(360) : error 017: undefined symbol "MainHallEnter"
C:\Users\thuron\Desktop\SIR server\gamemodes\SIRRP.pwn(361) : error 017: undefined symbol "MainHallExit"
C:\Users\thuron\Desktop\SIR server\gamemodes\SIRRP.pwn(517) : error 017: undefined symbol "MainHallEnter"
C:\Users\thuron\Desktop\SIR server\gamemodes\SIRRP.pwn(522) : error 017: undefined symbol "MainHallExit"
Pawn compiler 3.2.3664	 Copyright (c) 1997-2006, ITB CompuPhase


4 Errors.

Als ik dan

#define MainHallEnter -1704.5681, 785.7525, 25.2848

doe, dan komt ie weer met die warning 206.....

Geplaatst:
  • Auteur
comment_1293143

Ik heb het bijna!!! 1 ding: number of arguments do not match, maar ik kon nie vinde welke arguments erbij horen, en die op wiki begreep ik niet helemaal. dit is em:

if(!strcmp("/Enter", cmdtext, true) && PlayerToPoint(1.5 ,playerid,MainHallEnter))

wat is daar de fout in?

Geplaatst:
comment_1293588

het enige wat ik nog moet weten is hoe je die func van PlayerToPoint maakt, want ik heb daar 2 errors over

C:\Users\Jordy\Desktop\GTAFORUM.pwn(20) : error 017: undefined symbol "PlayerToPoint"
C:\Users\Jordy\Desktop\GTAFORUM.pwn(27) : error 017: undefined symbol "PlayerToPoint"
Pawn compiler 3.2.3664	 	 	Copyright (c) 1997-2006, ITB CompuPhase


2 Errors.

EDIT: dr staat "undefined" moet je die playertopoint niet defineren "#DEFINE PLAYERTOPOINT 0.0.0.0" of zo iets??

Bewerkt: door GTA_GAMER_JD

Geplaatst:
comment_1293652
forward public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
{
new Float:oldposx, Float:oldposy, Float:oldposz;
new Float:tempposx, Float:tempposy, Float:tempposz;
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
tempposx = (oldposx -x);
tempposy = (oldposy -y);
tempposz = (oldposz -z);
if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
	return 1;
}
return 0;
}

Geplaatst:
comment_1293817

Kijk eens naar hoe de PlayerToPoint gedefineerd word:

(post van D-V-D-K, 2 berichten hierboven)

public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);

Je moet dus, de afstand, playerid, X-coordinaat, Y-coordinaat en Z-coordinaat invoegen.

Wat jij hebt ingevoerd is afstand, playerid en het ID van een pickup.

Je moet dus niet het ID van de pickup invoeren, maar de coordinaten ervan.

Geplaatst:
  • Auteur
comment_1293965

aha!, ik heb het nu helemaal gefixed. kep nu die fout weggehaald en die andere (redunant test of zoiets) kwam doordat ik de "new mainhallenter" en "new mainhallexit" op de verkeerde plek had. nu doet hij het goed. heel erg bedankt voor jullie hulp! als jullie er vragen over hebben, moe je het maar ff zeggen!

Geplaatst:
comment_1294244

ff een edit op het bericht van Thuron:

Mijn code is nu

#include <a_samp>
//---
#define MAIN_HALL_ENTER_POS	 -1704.5681, 785.7525, 25.2848
#define MAIN_HALL_EXIT_POS	  246.6510,109.3008,1003.2188
//---
new MainHallEnter;
new MainHallExit;
//---
forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
//=====================================================
public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
{
new Float:oldposx, Float:oldposy, Float:oldposz;
new Float:tempposx, Float:tempposy, Float:tempposz;
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
tempposx = (oldposx -x);
tempposy = (oldposy -y);
tempposz = (oldposz -z);
if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
	return 1;
}
return 0;
}
//=====================================================
public OnGameModeInit()
{

MainHallEnter = CreatePickup(1318,23,MAIN_HALL_ENTER_POS);
MainHallExit = CreatePickup(1318,23,MAIN_HALL_EXIT_POS);
return 1;
}
//=====================================================
public OnPlayerCommandText(playerid, cmdtext[])
{
//---
if(!strcmp("/Enter", cmdtext, true) && PlayerToPoint(1.5 ,playerid,MAIN_HALL_ENTER_POS))
{
SetPlayerInterior(playerid, 10);
SetPlayerPos(playerid,246.40,110.84,1003.22);
return 1;
}
//---
if(!strcmp("/Exit", cmdtext, true) && PlayerToPoint(3.0 ,playerid,MAIN_HALL_EXIT_POS))
{
SetPlayerInterior(playerid, 0);
SetPlayerPos(playerid,-1704.5681, 785.7525, 25.2848);
return 1;
}
//---
return 0;
}
//=====================================================
public OnPlayerPickUpPickup(playerid, pickupid)
{
//---
if(pickupid == MainHallEnter)
{
GameTextForPlayer(playerid, "Type /enter to enter the main hall.", 3000, 3);
}
//---
if(pickupid == MainHallExit)
{
 GameTextForPlayer(playerid, "Type /exit to exit the main hall.", 3000, 3);
 }
//---
return 1;
}

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

Recent actief 0

  • Er zijn hier geen geregistreerde gebruikers aanwezig.