Szerző Téma: PlayerToPoint  (Megtekintve 1400 alkalommal)

Nem elérhető GeGe88

  • 216
    • Profil megtekintése
PlayerToPoint
« Dátum: 2009. november 22. - 17:29:36 »
0 Show voters
Üdv. Átnézegettem módokat/scripteket de nem találtam hogy hogyan lehet olyan ID-s parancsot csinálni h csak akkor csinlja a funkciót ha közel van hozzá. Például:
 
    if (strcmp(\"/kotozes\", cmdtext, true, 10) == 0)
{
    new params[128];
params = strtok(cmdtext, idx);
if(!strlen(params))
return
SendClientMessage(playerid, 0x15005EAA, \"Használat: /kotozes [id]\");
new givenid = strval(params);
if(IsPlayerConnected(givenid)) TogglePlayerControllable ( playerid, false );
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
       GetPlayerName(playerid, sendername, sizeof(sendername));
       format(string, sizeof(string), \"%s Meg lett kötözve egy rendor által.\", giveplayer,giveplayerid);
       SendClientMessageToAll(0x15005EAA, string);
       } else {
SendClientMessage(playerid,0x15005EAA,\"Nincs a szerveren akit kötözni akartál.\");
return 1;
}

 
És csak akkor lehet megkötözni ha közel van hozzá. Remélem értitek :D Elore is köszi. GeGe

Nem elérhető Iceaac

  • 2187
    • Profil megtekintése
PlayerToPoint
« Válasz #1 Dátum: 2009. november 22. - 17:51:01 »
0 Show voters
Ez kell hozzá:
 
forward Float:GetDistanceBetweenPlayers(p1,p2);
public Float:GetDistanceBetweenPlayers(p1,p2)
{
new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
if(!IsPlayerConnected(p1) || !IsPlayerConnected(p2))
{
return -1.00;
}
GetPlayerPos(p1,x1,y1,z1);
GetPlayerPos(p2,x2,y2,z2);
return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
}

 
És itt a parancs:
 
    if (strcmp(\"/kotozes\", cmdtext, true, 10) == 0)
{
    new params[128];
params = strtok(cmdtext, idx);
if(!strlen(params))
return
SendClientMessage(playerid, 0x15005EAA, \"Használat: /kotozes [id]\");
new givenid = strval(params);
if(IsPlayerConnected(givenid))
if (GetDistanceBetweenPlayers(playerid,givenid) > 6) return SendClientMessage(playerid,  0x15005EAA, \"A játékos túl messze van!\");
TogglePlayerControllable ( playerid, false );
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
       GetPlayerName(playerid, sendername, sizeof(sendername));
       format(string, sizeof(string), \"%s Meg lett kötözve egy rendor által.\", giveplayer,giveplayerid);
       SendClientMessageToAll(0x15005EAA, string);
       } else {
SendClientMessage(playerid,0x15005EAA,\"Nincs a szerveren akit kötözni akartál.\");
return 1;
}

Nem elérhető GeGe88

  • 216
    • Profil megtekintése
PlayerToPoint
« Válasz #2 Dátum: 2009. november 22. - 18:27:07 »
0 Show voters
Köszi hogy segítesz!
De sajnos van 4ErRoR:
 
// This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT
forward Float:GetDistanceBetweenPlayers(p1,p2);
public Float:GetDistanceBetweenPlayers(p1,p2)
{
new Float:x1,Float:y1,Float:z1,Float:x2,Float:y2,Float:z2;
if(!IsPlayerConnected(p1) || !IsPlayerConnected(p2))
{
return -1.00;
}
GetPlayerPos(p1,x1,y1,z1);
GetPlayerPos(p2,x2,y2,z2);
return floatsqroot(floatpower(floatabs(floatsub(x2,x1)),2)+floatpower(floatabs(floatsub(y2,y1)),2)+floatpower(floatabs(floatsub(z2,z1)),2));
}
#include <a_samp>
#if defined FILTERSCRIPT
public OnFilterScriptInit()
{
print(\"\\n--------------------------------------\");
print(\" Blank Filterscript by your name here\");
print(\"--------------------------------------\\n\");
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
#else
main()
{
print(\"\\n----------------------------------\");
print(\" Blank Gamemode by your name here\");
print(\"----------------------------------\\n\");
}
#endif
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(\"/kotozes\", cmdtext, true, 10) == 0)
{
    new params[128];
params = strtok(cmdtext, idx);
if(!strlen(params))
return
SendClientMessage(playerid, 0x15005EAA, \"Használat: /kotozes [id]\");
new givenid = strval(params);
if(IsPlayerConnected(givenid))
if (GetDistanceBetweenPlayers(playerid,givenid) > 6) return SendClientMessage(playerid,  0x15005EAA, \"A játékos túl messze van!\");
TogglePlayerControllable ( playerid, false );
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
       GetPlayerName(playerid, sendername, sizeof(sendername));
       format(string, sizeof(string), \"%s Meg lett kötözve egy rendor által.\", giveplayer,giveplayerid);
       SendClientMessageToAll(0x15005EAA, string);
       } else {
SendClientMessage(playerid,0x15005EAA,\"Nincs a szerveren akit kötözni akartál.\");
return 1;
}

 
Errors:
 
C:\\Documents and Settings\\User\\Asztal\\rendor.pwn(9) : error 017: undefined symbol \"IsPlayerConnected\"
C:\\Documents and Settings\\User\\Asztal\\rendor.pwn(9) : warning 215: expression has no effect
C:\\Documents and Settings\\User\\Asztal\\rendor.pwn(9) : error 001: expected token: \";\", but found \")\"
C:\\Documents and Settings\\User\\Asztal\\rendor.pwn(9) : error 029: invalid expression, assumed zero
C:\\Documents and Settings\\User\\Asztal\\rendor.pwn(9) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664           Copyright (c) 1997-2006, ITB CompuPhase
 
4 Errors.

Nem elérhető Iceaac

  • 2187
    • Profil megtekintése
PlayerToPoint
« Válasz #3 Dátum: 2009. november 23. - 09:35:30 »
0 Show voters
#include <a_samp>

 <- ezt a script legelejére tedd

Nem elérhető md12

  • 514
    • Profil megtekintése
PlayerToPoint
« Válasz #4 Dátum: 2009. november 23. - 14:05:01 »
0 Show voters
Kedves Gege, kérlek nézd át az lvdm mod ot és abból majd tanulsz vmit szkriptelés terén.  :)
 
#if defined FILTERSCRIPT
public OnFilterScriptInit()
{
print(\"\\n--------------------------------------\");
print(\" Blank Filterscript by your name here\");
print(\"--------------------------------------\\n\");
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
#else
main()
{
print(\"\\n----------------------------------\");
print(\" Blank Gamemode by your name here\");
print(\"----------------------------------\\n\");
}
#endif
[/quote]
erre a részre gondolok minek main? ez szkript -.- minek else enidif meg if defined? tök fölösleges  :-\\

PlayerToPoint
« Válasz #5 Dátum: 2009. november 23. - 14:57:11 »
0 Show voters
A main() szükséges, hozzátartozik a PWN fájl felépítéséhez.

Nem elérhető Iceaac

  • 2187
    • Profil megtekintése
PlayerToPoint
« Válasz #6 Dátum: 2009. november 23. - 15:00:43 »
0 Show voters
Idézetet írta: Gergo1352 date=1258984631\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"216\" data-ipsquote-contentclass=\"forums_Topic
A main() szükséges, hozzátartozik a PWN fájl felépítéséhez.
 
(Csak GM-hez kell nem?)

Nem elérhető GeGe88

  • 216
    • Profil megtekintése
PlayerToPoint
« Válasz #7 Dátum: 2009. november 23. - 16:25:47 »
0 Show voters
köszi md12 a tanácsot megfogadom^^

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal