Jump to content

Het Scripting Problemen Topic


Recommended Posts

Geplaatst:
Kan je ook gewoon vinden in het lvdm script, ter informatie.

Heb ik al verwijderd.

  • Reacties 838
  • Created
  • Laatste reactie

Top Posters In This Topic

  • Sandra

    115

  • opacool6

    79

  • Big Boss

    57

  • Remi-X

    55

Top Posters In This Topic

Posted Images

Geplaatst:
Kan je ook gewoon vinden in het lvdm script, ter informatie.

Heb ik al verwijderd.

Dan had je het desnoods nog van de SA:MP Wiki kunnen downloaden :7

Geplaatst:

Even een vraagje tussendoor: is er een manier om gamemodes te laten communiceren met bepaalde elementen uit filterscripts? Ik hen bijv. als filterscript XtremeAdmin2 maar ik heb in mijn GM een command waarvoor ik een adminlevel nodig heb uit dat filterscript.

Geplaatst:

Dat kan, maar daarvoor heb je wel een include nodig: DProp van DracoBlue. Ik heb er verder nooit mee gewerkt, dus ik heb er geen ervaring mee. Maar DracoBlue kennende zal er wel een goede readme bijzitten ;).

Geplaatst:

Ik ben weer begonnen met scripten, en ik heb weer errors. :duh:

Errors:

\SAMP\gamemodes\RPG_Island.pwn(212) : error 021: symbol already defined: "strtok"
\SAMP\gamemodes\RPG_Island.pwn(225) : error 047: array sizes do not match, or destination array is too small

Het stukje code wat erbij hoort(Ik heb de strtok functie gekopieerd uit de tutorial van Sandra):

strtok(const string[], &index)
{
new length = strlen(string);
while ((index < length) && (string[index] <= ' '))
{
	index++;
}
new result[20], offset = index;
while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
{
	result[index - offset] = string[index];
	index++;
}
result[index - offset] = EOS;
return result;
}

Geplaatst:

Wat is de inhoud van regel 212 en 225? Ik kan namelijk weinig met de informatie die je nu geeft...

Geplaatst:

/////////////////////////////////////

strtok(const string[], &index)

212-> {

new length = strlen(string);

while ((index < length) && (string[index] <= ' '))

{

index++;

}

new result[20], offset = index;

while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))

{

result[index - offset] = string[index];

index++;

}

result[index - offset] = EOS;

225-> return result;

}

///////////////////////////////////

Geplaatst:

Heb ik ook gehad, simpelweg die strtok functie verwijderen.

Als je een include gebruikt (Dini of Dudb, weet ik niet precies meer) hoef je volgens mij niet meer zelf die strtok functie erin te zetten.

Geplaatst: (bewerkt)

Oke.. Bedankt. Dat is dan dus mijn fout. :engel:

Bewerkt: door Remcconen
Geplaatst:

Hallo.,

Ik heb hier een script, maar dit wil maar niet werken. Het geeft telkens rare getallen weer. Ik heb al meerdere mensen om hulp gevraagt, maar die wisten het ook niet. Dit is het script:

	if(strcmp(cmd, "/test", true)==0)
{
	vehicleid1 = GetPlayerVehicleID(playerid);
	new Float:CarHealth;
	new Float:PrijsBr;
	new VerkoopPr;
	GetVehicleHealth(vehicleid1, CarHealth);
	PrijsBr = CarHealth;
	PrijsBr -= 300;
	PrijsBr /= 14;
	VerkoopPr = floatround(PrijsBr, floatround_round);
	if(CarHealth < 0) { VerkoopPr = 0; }
	format(string, sizeof(string), "De uitkomst is %d (auto levens: %.0f)", VerkoopPr, CarHealth);
	SendClientMessage(playerid, YELLOW, string);
	return 1;
}

Als ik dit cmd uitvoer, krijg ik te zien:

 De uitkomst is 1285282048 (auto levens: 1000)

Alleen moet de uitkomst tussen de 50 en de 0 zitten.

De rekensom klopt wel, 1000 - 300 = 700 / 14 = 50. Dus ik hoor dit te zien te krijgen:

 De uitkomst is 50 (auto levens: 1000)

Weet iemand hoe ik dit script werkend kan krijgen?

Alvast bedankt!

MVG,

Wanted

Geplaatst:

Vervang

PrijsBr = CarHealth;
	PrijsBr -= 300;
	PrijsBr /= 14;

door

PrijsBr = CarHealth-300/14;

Geplaatst: (bewerkt)
Vervang

PrijsBr = CarHealth;
	PrijsBr -= 300;
	PrijsBr /= 14;

door

PrijsBr = CarHealth-300/14;

Nee, want dan klopt het sommetje niet meer. Dan doet hij namelijk 1000 - ( 300/14 ) . Dus dan kom je uit op 978.5714286. Maar toch bedankt dat je het geprobeert hebt. :)

EDIT: Het probleem zit hem in dat Float etc gedoe...

Bewerkt: door Wanted
Geplaatst:

Misschien:

PrijsBr[1] = CarHealth
PrijsBr[2] = PrijsBr[1]-300
PrijsBr[3] = PrijsBr[2/]14

Gast
Dit onderwerp is gesloten.
  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.

×
×
  • Create New...