[wwg] Pulverizer_Be [ldr] Geplaatst: 19 december 2007 Rapport Geplaatst: 19 december 2007 (bewerkt) ik had zo een teleport gemaak, dat als ik te voet ben, ik ergens naartoe kan, en als ik in een wagen zit, dat ik dan niet kan teleporteren. maar is het dan ook mogelijk om het wel mogenlijk te maken om je met een wagen te teleporteren, als die wagen een pcj 600 is (sorry voor rare zinsbouw, maar ik kan het niet beter uitleggen ) dus te voet of met een pcj 600 (id 461) kan je er wel naartoe, maar met een andere wagen niet deze script had ik al: public OnPlayerCommandText(playerid, cmdtext[]) { if(strcmp(cmdtext, "/buildingjump", true) == 0) { if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) { SendClientMessage(playerid, 0xAA3333AA, "Vehicles may not be teleported to BuildingJump."); SendClientMessage(playerid, 0xAA3333AA, "Please leave your vehicle here."); } else { SetPlayerPos(playerid,-2882.8174,-3074.8611,79.6127); SetPlayerFacingAngle(playerid,270.0000); SetCameraBehindPlayer(playerid); SendClientMessage(playerid, 0xFF6600AA, "You have been teleportated to -BuildingJump-"); } return 1; } ik heb het al eens proberen te maken, maar die command werkt niet juist: ik kon namelijk toch met gewone auto's er naartoe gaan alvast bedankt! Bewerkt: 19 december 2007 door [wwg] Pulverizer_Be [ldr]
Sandra Geplaatst: 19 december 2007 Rapport Geplaatst: 19 december 2007 (bewerkt) public OnPlayerCommandText(playerid, cmdtext[]) { if(strcmp(cmdtext, "/buildingjump", true) == 0) { if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) { if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 461) { SetVehiclePos(GetPlayerVehicleID(playerid),-2882.8174,-3074.8611,79.6127); SetVehicleZAngle(GetPlayerVehicleID(playerid),270.0000); SetCameraBehindPlayer(playerid); SendClientMessage(playerid, 0xAA3333AA, "You have been teleportated to -BuildingJump-"); } else { SendClientMessage(playerid, 0xAA3333AA, "You can only teleport with a pcj600 or on foot."); } } else { SetPlayerPos(playerid,-2882.8174,-3074.8611,79.6127); SetPlayerFacingAngle(playerid,270.0000); SetCameraBehindPlayer(playerid); SendClientMessage(playerid, 0xFF6600AA, "You have been teleportated to -BuildingJump-"); } return 1; } klik >>hier<< voor een beter uitgelijnde versie Bewerkt: 19 december 2007 door Sandra18[NL]
[wwg] Pulverizer_Be [ldr] Geplaatst: 19 december 2007 Rapport Geplaatst: 19 december 2007 oh, bedankt
[wwg] Pulverizer_Be [ldr] Geplaatst: 20 december 2007 Rapport Geplaatst: 20 december 2007 als ik /bigjump typ, dan blokkeert de server maar in pawno geeft hij geen fouten. if(strcmp(cmdtext, "/bigjump", true) == 0) // Tele 2 BigJump { if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) { SetVehiclePos(GetPlayerVehicleID(playerid),-594.1223,904.4135,427.5000); SetVehicleZAngle(GetPlayerVehicleID(playerid),135.0000); SetCameraBehindPlayer(playerid); SendClientMessage(playerid, 0xFF6600AA, "You have been teleportated to -BigJump-"); SendClientMessageToAll(0xAFAFAFAA,"%s has teleported to -BigJump."); } else { SetPlayerPos(playerid,-594.1223,904.4135,427.0000); SetPlayerFacingAngle(playerid,135.0000); SetCameraBehindPlayer(playerid); SendClientMessage(playerid, 0xFF6600AA, "You have been teleportated to -BigJump-"); SendClientMessage(playerid, 0xAA3333AA, "(You need a vehicle for this stunt)"); SendClientMessageToAll(0xAFAFAFAA,"%s has teleported to -BigJump."); } return 1; } zonder die "%s has teleported to -BigJump." werkt het wel, maar hoe moet ik dat dan wel typen zodat het werkt?
Rivel Geplaatst: 20 december 2007 Rapport Geplaatst: 20 december 2007 als ik /bigjump typ, dan blokkeert de server maar in pawno geeft hij geen fouten. if(strcmp(cmdtext, "/bigjump", true) == 0) // Tele 2 BigJump { if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) { SetVehiclePos(GetPlayerVehicleID(playerid),-594.1223,904.4135,427.5000); SetVehicleZAngle(GetPlayerVehicleID(playerid),135.0000); SetCameraBehindPlayer(playerid); SendClientMessage(playerid, 0xFF6600AA, "You have been teleportated to -BigJump-"); SendClientMessageToAll(0xAFAFAFAA,"%s has teleported to -BigJump."); } else { SetPlayerPos(playerid,-594.1223,904.4135,427.0000); SetPlayerFacingAngle(playerid,135.0000); SetCameraBehindPlayer(playerid); SendClientMessage(playerid, 0xFF6600AA, "You have been teleportated to -BigJump-"); SendClientMessage(playerid, 0xAA3333AA, "(You need a vehicle for this stunt)"); SendClientMessageToAll(0xAFAFAFAA,"%s has teleported to -BigJump."); } return 1; } zonder die "%s has teleported to -BigJump." werkt het wel, maar hoe moet ik dat dan wel typen zodat het werkt? MIsschien mag je die % niet gebruiken. Probeer die eens weg te laten en gewoon ''Has'' te zetten.
Argon Geplaatst: 20 december 2007 Rapport Geplaatst: 20 december 2007 %s moet gebruikt worden in de functie format. Je moet dit dus doen onder de vorm: new text[], playerName[MAX_PLAYER_NAME]; GetPlayerName(playerid, playerName, MAX_PLAYER_NAME); format(text, sizeof(text), "%s blablabla...", playerName); Dat moet je dus erbij zetten voor de regel: SendClientMessageToAll(0xAFAFAFAA,"%s has teleported to -BigJump."); En die regel moet je dan ook nog even wijzigen zodat er staat: SendClientMessageToAll(0xAFAFAFAA, text);
[wwg] Pulverizer_Be [ldr] Geplaatst: 20 december 2007 Rapport Geplaatst: 20 december 2007 (bewerkt) werkt niet xD dus nu heb ik dit: if(strcmp(cmdtext, "/bigjump", true) == 0) { if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) { new text[], playerName[MAX_PLAYER_NAME]; GetPlayerName(playerid, playerName, MAX_PLAYER_NAME); format(text, sizeof(text), "%s has teleported to -BigJump-", playerName); SetVehiclePos(GetPlayerVehicleID(playerid),-594.1223,904.4135,427.5000); SetVehicleZAngle(GetPlayerVehicleID(playerid),135.0000); SetCameraBehindPlayer(playerid); SendClientMessage(playerid, 0xFF6600AA, "You have been teleportated to -BigJump-"); SendClientMessageToAll(0xAFAFAFAA, text); } else { SetPlayerPos(playerid,-594.1223,904.4135,427.0000); SetPlayerFacingAngle(playerid,135.0000); SetCameraBehindPlayer(playerid); SendClientMessage(playerid, 0xFF6600AA, "You have been teleportated to -BigJump-"); SendClientMessage(playerid, 0xAA3333AA, "(You need a vehicle for this stunt)"); } return 1; } en ik krijg deze errors: C:\Games\GTA San Andreas\GTA San Andreas\server\gamemodes\WWG.pwn(802) : error 009: invalid array size (negative, zero or out of bounds) C:\Games\GTA San Andreas\GTA San Andreas\server\gamemodes\WWG.pwn(802) : error 029: invalid expression, assumed zero C:\Games\GTA San Andreas\GTA San Andreas\server\gamemodes\WWG.pwn(802) : error 017: undefined symbol "playerName" C:\Games\GTA San Andreas\GTA San Andreas\server\gamemodes\WWG.pwn(802) : fatal error 107: too many error messages on one line Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 4 Errors. wat doe ik dan mis? Bewerkt: 20 december 2007 door [wwg] Pulverizer_Be [ldr]
Sandra Geplaatst: 20 december 2007 Rapport Geplaatst: 20 december 2007 new text[] moet zijn: new text[128]
[wwg] Pulverizer_Be [ldr] Geplaatst: 20 december 2007 Rapport Geplaatst: 20 december 2007 en hoe weet je dan dat dat 128 moet zijn?
Sandra Geplaatst: 20 december 2007 Rapport Geplaatst: 20 december 2007 (bewerkt) en hoe weet je dan dat dat 128 moet zijn? 128 was maar een voorbeeld. het kan net zo goed 256 of 1542434 zijn. Maar dat getal geeft het aantal tekens (letters) aan dat in die regel (een string word dat ook wel genoemd) komen. Het maximaal aantal tekens dat je per regel naar de chat kan sturen, is 128. Het script houdt dan dus 128 bytes (of bits) vrij voor die regel. Bewerkt: 20 december 2007 door Sandra18[NL]
[wwg] Pulverizer_Be [ldr] Geplaatst: 20 december 2007 Rapport Geplaatst: 20 december 2007 (bewerkt) dus het makkelijkste is dat ik altijd 128 gebruik? (als ik nog meerdere strings toevoeg) of mag ik geen 2x hetzelfde gebruiken? Bewerkt: 20 december 2007 door [wwg] Pulverizer_Be [ldr]
.Timothy Geplaatst: 20 december 2007 Rapport Geplaatst: 20 december 2007 dus het makkelijkste is dat ik altijd 128 gebruik? (als ik nog meerdere strings toevoeg)of mag ik geen 2x hetzelfde gebruiken? Jawel hoor, je mag wel twee keer 128 gebruiken, daar is niks mis mee. Het is alleen verkeerd als je twee keer dezelfde string definiëert, dat kan niet. Je kan dus wel dit hebben... new test[128]; new nogeen[128]; ...maar niet dit.. new test[128]; new test[128]; ...omdat 'test' al bestaat.
[wwg] Pulverizer_Be [ldr] Geplaatst: 20 december 2007 Rapport Geplaatst: 20 december 2007 oh, maar dat mag dan wel als ik bij de ene hoofdletters gebruik, en bij de andere geen hoofdletters? dat is dan ook zogezegd verschillend?
.Timothy Geplaatst: 20 december 2007 Rapport Geplaatst: 20 december 2007 Pawno is niet hoofdlettergevoelig, ik heb het net getest, dus je kan 'test', 'Test', 'TEST' of iets anders gewoon tegelijk gebruiken. Let wel dat je code dan een stuk minder overzichtelijk wordt, dan dat je ze twee verschillende namen geeft. Als je dit niet doet dan zit je gauw te twijfelen waar je nu wel/niet hoofdletters gebruikte.
[wwg] Pulverizer_Be [ldr] Geplaatst: 20 december 2007 Rapport Geplaatst: 20 december 2007 (bewerkt) Pawno is niet hoofdlettergevoelig, ik heb het net getest, dus je kan 'test', 'Test', 'TEST' of iets anders gewoon tegelijk gebruiken. Let wel dat je code dan een stuk minder overzichtelijk wordt, dan dat je ze twee verschillende namen geeft. Als je dit niet doet dan zit je gauw te twijfelen waar je nu wel/niet hoofdletters gebruikte. oh, bij mij is die wel hoofdlettergevoelig, want als ik een normale letter verander in een hoofdletter, dan geeft hij een error maar bedankt he Bewerkt: 20 december 2007 door [wwg] Pulverizer_Be [ldr]
Recommended Posts