-
Sziasztok egy automata kaput próbáltam csinálni de van egy error
Itt a gm:
#include <a_samp>
new kapu;
forward message();
public OnGameModeInit()
{
print(\"Starting timer...\");
SetTimer(\"message\", 500, true); // Set a timer of 1000 miliseconds (1 second)
}
public message()
{
print(\"1 second has passed.\");
}
{
kapu = CreateObject(980, 1540.6999511719, -1627.9000244141, 15.199999809265, 0, 0, 270);
}
forward ajtotimer(); // prototípus
public ajtotimer(){
new bool:nyissuk = false; // egy helyi változó
for(new i; i<MAX_PLAYERS; i++){ // minden játékost ellenõrzünk
if(!IsPlayerConnected(i)) continue; // ha nincs ilyen játékos, ugrunk a következõre
if(IsPlayerInRangeOfPoint(i, 7.5, 1540.6999511719, -1627.9000244141, 15.199999809265)){
nyissuk=true; // ha 7.5 egységen belül van, legyen kinyitva neki - az értékeket itt is helyettesítsük a csukott állapotéval
break; // ha egy játékos a közelben van, nem nézünk tovább, hanem nyitunk
}
}
if(nyissuk)
MoveObject(kapu, 1540.9000244141, -1636, 15.199999809265, 5); // ha van játékos a közelben lassan áthelyezzük az objektumot - \"kinyissuk\" - az értékeket itt a nyitott állapotéval helyettesítsük be
else
MoveObject(kapu, 1540.6999511719, -1627.9000244141, 15.199999809265, 5); // ha nincs játékos a közelben, becsukjuk - az értékeket itt is helyettesítsük a csukott állapotéval
}
És az error:
C:\\Documents and Settings\\Dyr Oss.DYROSS\\Asztal\\szerverem\\kapum.pwn(18) : error 055: start of function body without function header
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Error.
A válaszokat elõre is köszi! :)
-
{
kapu = CreateObject(980, 1540.6999511719, -1627.9000244141, 15.199999809265, 0, 0, 270);
}
nincs függvény fejrész...
szerintem ezt a kódot az OnGameModeInit alá akartad rakni...
-
{
kapu = CreateObject(980, 1540.6999511719, -1627.9000244141, 15.199999809265, 0, 0, 270);
}
forward ajtotimer(); // prototípus
public ajtotimer(){
... blablabla
Ide nem raktál funkciót vagy ki törölted az eredetit ( public OnGameModeInit vagy FilterScriptInit )
Szerk: Sorry nem lattam hogy mar valaszoltak elöttem.
-
ez az error:
C:\\Documents and Settings\\Dyr Oss.DYROSS\\Asztal\\szerverem\\idõzítõ.pwn(13) : error 055: start of function body without function header
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Error.
és így néz ki most:
#include <a_samp>
new kapu;
forward message();
public OnGameModeInit()
{
kapu = CreateObject(980, 1540.6999511719, -1627.9000244141, 15.199999809265, 0, 0, 270);
}
{
print(\"Starting timer...\");
SetTimer(\"message\", 1000, false); // Set a timer of 1000 miliseconds (1 second)
}
public message()
{
print(\"1 second has passed.\");
}
forward ajtotimer(); // prototípus
public ajtotimer(){
new bool:nyissuk = false; // egy helyi változó
for(new i; i<MAX_PLAYERS; i++){ // minden játékost ellenõrzünk
if(!IsPlayerConnected(i)) continue; // ha nincs ilyen játékos, ugrunk a következõre
if(IsPlayerInRangeOfPoint(i, 7.5, 1540.6999511719, -1627.9000244141, 15.199999809265)){
nyissuk=true; // ha 7.5 egységen belül van, legyen kinyitva neki - az értékeket itt is helyettesítsük a csukott állapotéval
break; // ha egy játékos a közelben van, nem nézünk tovább, hanem nyitunk
}
}
if(nyissuk)
MoveObject(kapu, 1540.9000244141, -1636, 15.199999809265, 5); // ha van játékos a közelben lassan áthelyezzük az objektumot - \"kinyissuk\" - az értékeket itt a nyitott állapotéval helyettesítsük be
else
MoveObject(kapu, 1540.6999511719, -1627.9000244141, 15.199999809265, 5); // ha nincs játékos a közelben, becsukjuk - az értékeket itt is helyettesítsük a csukott állapotéval
}
-
public OnGameModeInit()
{
kapu = CreateObject(980, 1540.6999511719, -1627.9000244141, 15.199999809265, 0, 0, 270);
}
{
print(\"Starting timer...\");
SetTimer(\"message\", 1000, false); // Set a timer of 1000 miliseconds (1 second)
}
helyett:
public OnGameModeInit()
{
kapu = CreateObject(980, 1540.6999511719, -1627.9000244141, 15.199999809265, 0, 0, 270);
print(\"Starting timer...\");
SetTimer(\"message\", 1000, false); // Set a timer of 1000 miliseconds (1 second)
}
-
Most jó csak nincs ott az object :(
-
Ajánlom, Y2K Automata kapu készítés leírást!!
Sok sikert!!
Link: http://gtaforum.hu/index.php?topic=2450.msg14040#msg14040
-
itt megakadtam :D
#include <a_samp>
new valamicske
public OnGameModeInit();
{
valamicske =CreateObject(980, 1540.6999511719, -1627.9000244141, 15.199999809265, 0, 0, 270);
stock IsPlayerInRangeOfPoint(playerid, Float:radius, Float:X, Float:Y, Float:Z){
new Float:px,Float:py,Float:pz;
GetPlayerPos(playerid,px,py,pz);
return ( ( ((px-X)*(px-X))+((py-Y)*(py-Y))+((pz-Z)*(pz-Z)) ) >= radius*radius );
}
SetTimer(\"ajtotimer\", 500, true);
forward ajtotimer(); // prototípus
public ajtotimer(){
new bool:nyissuk = false; // egy helyi változó
for(new i; i<MAX_PLAYERS; i++){ // minden játékost ellenõrzünk
if(!IsPlayerConnected(i)) continue; // ha nincs ilyen játékos, ugrunk a következõre
if(IsPlayerInRangeOfPoint(980, 7.5, 1540.6999511719, -1627.9000244141, 15.199999809265)){
nyissuk=true; // ha 7.5 egységen belül van, legyen kinyitva neki - az értékeket itt is helyettesítsük a csukott állapotéval
break; // ha egy játékos a közelben van, nem nézünk tovább, hanem nyitunk
}
}
if(nyissuk)
MoveObject(valamicske, 1540.9000244141, -1636, 15.199999809265, 5); // ha van játékos a közelben lassan áthelyezzük az objektumot - \"kinyissuk\" - az értékeket itt a nyitott állapotéval helyettesítsük be
else
MoveObject(valamicske, 1540.6999511719, -1627.9000244141, 15.199999809265, 5); // ha nincs játékos a közelben, becsukjuk - az értékeket itt is helyettesítsük a csukott állapotéval
}
és vannak errorok:
C:\\Documents and Settings\\Dyr Oss.DYROSS\\Asztal\\szerverem\\gamemodes\\kapum.pwn(5) : error 001: expected token: \";\", but found \"public\"
C:\\Documents and Settings\\Dyr Oss.DYROSS\\Asztal\\szerverem\\gamemodes\\kapum.pwn(6) : error 055: start of function body without function header
C:\\Documents and Settings\\Dyr Oss.DYROSS\\Asztal\\szerverem\\gamemodes\\kapum.pwn(9) : error 021: symbol already defined: \"IsPlayerInRangeOfPoint\"
C:\\Documents and Settings\\Dyr Oss.DYROSS\\Asztal\\szerverem\\gamemodes\\kapum.pwn(11) : error 021: symbol already defined: \"GetPlayerPos\"
C:\\Documents and Settings\\Dyr Oss.DYROSS\\Asztal\\szerverem\\gamemodes\\kapum.pwn(12) : error 010: invalid function or declaration
C:\\Documents and Settings\\Dyr Oss.DYROSS\\Asztal\\szerverem\\gamemodes\\kapum.pwn(15) : error 021: symbol already defined: \"SetTimer\"
C:\\Documents and Settings\\Dyr Oss.DYROSS\\Asztal\\szerverem\\gamemodes\\kapum.pwn(32) : warning 203: symbol is never used: \"px\"
C:\\Documents and Settings\\Dyr Oss.DYROSS\\Asztal\\szerverem\\gamemodes\\kapum.pwn(32) : warning 203: symbol is never used: \"py\"
C:\\Documents and Settings\\Dyr Oss.DYROSS\\Asztal\\szerverem\\gamemodes\\kapum.pwn(32) : warning 203: symbol is never used: \"pz\"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
6 Errors.
a válaszokat elõre is köszi..:)
-
#include <a_samp>
new valamicske;
public OnFilterScriptInit()
{
valamicske = CreateObject(980, 1540.6999511719, -1627.9000244141, 15.199999809265, 0, 0, 270);
SetTimer(\"ajtotimer\", 500, true);
return 1;
}
forward ajtotimer(); // prototípus
public ajtotimer()
{
new bool:nyissuk = false; // egy helyi változó
for(new i; i<MAX_PLAYERS; i++){ // minden játékost ellenõrzünk
if(!IsPlayerConnected(i)) continue; // ha nincs ilyen játékos, ugrunk a következõre
if(IsPlayerInRangeOfPoint(i, 7.5, 1540.6999511719, -1627.9000244141, 15.199999809265)){
nyissuk=true; // ha 7.5 egységen belül van, legyen kinyitva neki - az értékeket itt is helyettesítsük a csukott állapotéval
break; // ha egy játékos a közelben van, nem nézünk tovább, hanem nyitunk
}
}
if(nyissuk)
MoveObject(valamicske, 1540.9000244141, -1636, 15.199999809265, 5); // ha van játékos a közelben lassan áthelyezzük az objektumot - \"kinyissuk\" - az értékeket itt a nyitott állapotéval helyettesítsük be
else
MoveObject(valamicske, 1540.6999511719, -1627.9000244141, 15.199999809265, 5); // ha nincs játékos a közelben, becsukjuk - az értékeket itt is helyettesítsük a csukott állapotéval
}
-
Nincs ott az object :( Milehet a hiba :OO
Ha filterscriptbe rakom akkor ott van de nem mûködik..:(
-
#include <a_samp>
new valamicske;
public OnFilterScriptInit()
{
valamicske = CreateObject(980, 1540.6999511719, -1627.9000244141, 15.199999809265, 0, 0, 270);
SetTimer(\"ajtotimer\", 500, true);
return 1;
}
public OnFilterScriptExit()
{
DestroyObject(valamicske);
return 1;
}
forward ajtotimer();
public ajtotimer()
{
new bool:nyissuk = false; // egy helyi változó
for(new i; i<MAX_PLAYERS; i++){ // minden játékost ellenõrzünk
if(!IsPlayerConnected(i)) continue; // ha nincs ilyen játékos, ugrunk a következõre
if(IsPlayerInRangeOfPoint(i, 7.5, 1540.6999511719, -1627.9000244141, 15.199999809265)){
nyissuk=true; // ha 7.5 egységen belül van, legyen kinyitva neki - az értékeket itt is helyettesítsük a csukott állapotéval
break; // ha egy játékos a közelben van, nem nézünk tovább, hanem nyitunk
}
}
if(nyissuk)
MoveObject(valamicske, 1540.9000244141, -1636, 15.199999809265, 5); // ha van játékos a közelben lassan áthelyezzük az objektumot - \"kinyissuk\" - az értékeket itt a nyitott állapotéval helyettesítsük be
else
MoveObject(valamicske, 1540.6999511719, -1627.9000244141, 15.199999809265, 5); // ha nincs játékos a közelben, becsukjuk - az értékeket itt is helyettesítsük a csukott állapotéval
}
Szóval az a lényeg, hogy amikor a filterszkript bezár, akkor törölje az objektumot, különben vagy ott ragad, vagy a késõbbiekben meg sem jelenik, csak ha leállítod a szervered futtatását és újraindítod.
Ha a módban van a kapu, OnGameModeExit-hez tedd a jelenlegi OnFilterScriptInit-es részt.
-
Ez mind szép és jó de most meg megint nincs ott :D :(
-
Nem tudok mást.
Esetleg, ha a
forward ajtotimer();
-t a new valamicske; alá tennéd, lehet betöltene.
Ugyanis az idõzítõ elindítaná, de még nincs létrehozva.
De pedig létre kellene hozza az objektumot.
Egyéb körülmények vannak? Túl sok objektum stb?
Mást nem tudok.
-
Ez az egy kapu és ennyi...És a rendõrségen van a kapu...:)Majd mindjárt tesztelem...A további észleléseket majd írom :)
Jó lett köszi ment a +. :D
Nem zárom a témát hátha akad még kérdésem :)
-
Ez az egy kapu és ennyi...És a rendõrségen van a kapu...:)Majd mindjárt tesztelem...A további észleléseket majd írom
Jó lett köszi ment a +.
Nem zárom a témát hátha akad még kérdésem
[/quote]
Szívesen, cimborám, megtudhatom ki válasza volt a tökéletes??((Csak kíváncsiságból))
-
ScreaM :)
De te is sokat segítettél :)
Úgyhogy neked is ment a + :)
-
Mûködik akkor a szkript? :D Ha igen majd zárd a témát :)
-
Már írtam az elsõ oldalon ,hogy nem zárom mert még biztos hogy lesz hozzá kérdésem..:)
Dupla hozzászólás automatikusan összefûzve. ( 2012. November 15. - 20:16:57 )
Hogy lehet frakcióhoz kapcsolni? :) :OO
-
Hát odaírod például, hogy
&& TEAM_ADMIN
-
Bõvebben mondjuk példával ha lehet köszike :)