Szerző Téma: [ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]  (Megtekintve 18189 alkalommal)

Nem elérhető Epsilon

  • 1854
    • Profil megtekintése
[ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]
« Válasz #30 Dátum: 2011. február 25. - 16:30:26 »
0 Show voters
Nem.
Szervered használ filterszkripteket?

[ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]
« Válasz #31 Dátum: 2011. február 25. - 16:34:10 »
0 Show voters
Idézetet írta: Epsilon date=1298647826\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"1038\" data-ipsquote-contentclass=\"forums_Topic
Nem.
Szervered használ filterszkripteket?
 
Igen használ,köszi de már megvan,igazából evvel segítettél a legjobban:
 

Ezek szerint az \'/exitdm\' parancs az összes többi parancsod felett van? (legalábbis a  teleportok felett)
 
[/quote]
Köszi! ;)

Nem elérhető Epsilon

  • 1854
    • Profil megtekintése
[ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]
« Válasz #32 Dátum: 2011. február 25. - 17:01:01 »
0 Show voters
Nincs mit.  ;)

[ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]
« Válasz #33 Dátum: 2011. április 17. - 09:17:51 »
0 Show voters
Nekem 1 errort ír.
...(94) : error 030: compound statement not closed at the end of file (started at line 64)
És a 64-es sor:
if (strcmp(\"/exitdm\", cmdtext, true) == 0)
{
        if(dmid[playerid] == -1) return SendClientMessage(playerid,0xbc0000, \"A parancs használatához elobb lépj be egy DM zónába!\");
   dmid[playerid] = -1;
   SpawnPlayer(playerid);
   return SendClientMessage(playerid,0xbc0000,\"Kiléptél a DeathMatch zónából.\");
}else if(dmid[playerid] != -1) return SendClientMessage(playerid,0xbc0000,\"Elöbb lépj ki a dm-bõl!\");
Return 1; -et is próbáltam a parancs végére rakni, de így meg 7 error xd
Valaki leírná hogy mit tegyek? pls
Akár az is jó ha linkeltek egy kész dm zónát

Nem elérhető Epsilon

  • 1854
    • Profil megtekintése
[ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]
« Válasz #34 Dátum: 2011. április 17. - 09:43:09 »
0 Show voters
Ha a hiba a 94-es sorban van miért a 64-eset másoltad be?

Nem elérhető DrAkE

  • 2078
    • Profil megtekintése
[ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]
« Válasz #35 Dátum: 2011. április 17. - 09:49:05 »
0 Show voters
Alapból egy kérdés felvetõtödd bennem:
 
else if(dmid[playerid] != -1) return SendClientMessage(playerid,0xbc0000,\"Elöbb lépj ki a dm-bõl!\");

 
Ez minek a végére? Az exitdmnek pont az a lényege ha a változó értéke nem -1 akkor DMbõl ki tud lépni.
2 lehetséges út van: vagy bent van a DMben vagy nincs. Ha nincs bent akkor bekell lépnie, ha bent van kitud lépni, de azt hogy csinálja hogy \"Elõbb lépj ki a dm-bõl!\"? :D
Ez a sor szerintem felesleges.

Nem elérhető Epsilon

  • 1854
    • Profil megtekintése
[ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]
« Válasz #36 Dátum: 2011. április 17. - 10:02:17 »
0 Show voters
Idézetet írta: DrAkE date=1303026545\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"1038\" data-ipsquote-contentclass=\"forums_Topic
Alapból egy kérdés felvetõtödd bennem:
 
else if(dmid[playerid] != -1) return SendClientMessage(playerid,0xbc0000,\"Elöbb lépj ki a dm-bõl!\");

 
Ez minek a végére? Az exitdmnek pont az a lényege ha a változó értéke nem -1 akkor DMbõl ki tud lépni.
2 lehetséges út van: vagy bent van a DMben vagy nincs. Ha nincs bent akkor bekell lépnie, ha bent van kitud lépni, de azt hogy csinálja hogy \"Elõbb lépj ki a dm-bõl!\"? :D
Ez a sor szerintem felesleges.
 


Nem.

Félreértelmezted az feltételeket.
Ha azt írta be, hogy \"/exitdm\" akkor lefut a parancs, ha pedig mást, akkor kiírja, hogy elõbb lépj ki a DM-bõl.
 

Amit készítettünk:
A játékosok nem használhatnak más parancsokat míg nem hagyják el a dm zónát.
 
[/quote]

[ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]
« Válasz #37 Dátum: 2011. április 18. - 15:49:43 »
0 Show voters
Idézetet írta: Epsilon date=1303026189\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"1038\" data-ipsquote-contentclass=\"forums_Topic
Ha a hiba a 94-es sorban van miért a 64-eset másoltad be?
 
MERT 94-es sor NINCS xD
Lehet én baxtam el. Itt van, lehet ebbe van a hiba, ha láttok hibát plz iríátok le!
 
#define FILTERSCRIPT
#include <a_samp>
static dmid[MAX_PLAYERS]={ -1};
public OnFilterScriptInit()
{
print(\"\\n--------------------------------------\");
print(\" DM zóna\");
print(\" Készítõ: Lancer\");
print(\" Ez alapján:\");
print(\" http://sampforum.hu/index.php?topic=3967.0\");
print(\"--------------------------------------\\n\");
return 1;
}
public OnPlayerDisconnect(playerid,reason)
{
dmid[playerid] = -1;
return 1;
}
public OnPlayerSpawn(playerid)
{
switch(dmid[playerid])
{
    case 0: // 0-ás azonosítószámú dm zónához tartozó tevékenységek
    {
        SetPlayerPos(playerid,0.0,0.0,3.5); // Elhelyezés a dMben. Itt akár véletlenszeru spawnot is írhatunk, de az átláthatóság kedvéért maradjunk ennél ;)
        SetPlayerFacingAngle(playerid,90.0); // Játékos írányba állítása; elforgatás
   ResetPlayerWeapons(playerid); // fegyverek elvétele <- FONTOS
   GivePlayerWeapon(playerid,4,1); // Felfegyverzés
   GivePlayerWeapon(playerid,34,10); // Felfegyverzés
   SetPlayerVirtualWorld(playerid,dmid[playerid]); // áthelyezés mási VW-be
}
    case 1: // 1-es azonosítószámú dm zónához tartozó tevékenységek
    {
        SetPlayerPos(playerid,-1379.3,428.2,30.0); // Elhelyezés a dMben. Itt akár véletlenszeru spawnot is írhatunk, de az átláthatóság kedvéért maradjunk ennél ;)
        SetPlayerFacingAngle(playerid,180.0); // Játékos írányba állítása; elforgatás
   ResetPlayerWeapons(playerid); // fegyverek elvétele <- FONTOS
   GivePlayerWeapon(playerid,24,100); // Felfegyverzés
   GivePlayerWeapon(playerid,34,10); // Felfegyverzés
   SetPlayerVirtualWorld(playerid,dmid[playerid]); // áthelyezés mási VW-be
}
         case 2: // 2-es azonosítószámú dm zónához tartozó tevékenységek
    {
        SetPlayerPos(playerid,1379.3,-28.2,30.0); // Elhelyezés a dMben. Itt akár véletlenszeru spawnot is írhatunk, de az átláthatóság kedvéért maradjunk ennél ;)
        SetPlayerFacingAngle(playerid,110.0); // Játékos írányba állítása; elforgatás
   ResetPlayerWeapons(playerid); // fegyverek elvétele <- FONTOS
   GivePlayerWeapon(playerid,20,100); // Felfegyverzés
   GivePlayerWeapon(playerid,32,10); // Felfegyverzés
   SetPlayerVirtualWorld(playerid,dmid[playerid]); // áthelyezés mási VW-be
}
default: // Alap spawn funkciók. Amikor a játékos NINCS DM-BEN ÉS ÚGY SPAWNOL
{// Ide kell írni ami alap ból az OnPlayerSpawnnál volt
    GivePlayerMoney(playerid,100);
    GivePlayerWeapon(playerid,1,1);
    SetPlayerVirtualWorld(playerid,0); // Vissz*rakás az alap VW-be FONTOS
}
}
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(\"/exitdm\", cmdtext, true) == 0)
{
        if(dmid[playerid] == -1) return SendClientMessage(playerid,0xbc0000, \"A parancs használatához elobb lépj be egy DM zónába!\");
dmid[playerid] = -1;
SpawnPlayer(playerid);
return SendClientMessage(playerid,0xbc0000,\"Kiléptél a DeathMatch zónából.\");
}else if(dmid[playerid] != -1) return SendClientMessage(playerid,0xbc0000,\"Elöbb lépj ki a dm-bõl!\");
if (strcmp(\"/dm1\", cmdtext, true) == 0)
{
dmid[playerid] = 0; // Azonosítószám megadása FONTOS
    SpawnPlayer(playerid); // Játékos lespawnolása
SendClientMessage(playerid,0xbc0000,\"Ez még csak egy teszt parancs.\");
return 1;
}
if (strcmp(\"/dm2\", cmdtext, true) == 0)
{
dmid[playerid] = 1; // Azonosítószám megadása FONTOS
    SpawnPlayer(playerid); // Játékos lespawnolása
SendClientMessage(playerid,0xbc0000,\"Ez még csak egy teszt parancs.\");
return 1;
}
if (strcmp(\"/dm3\", cmdtext, true) == 0)
{
dmid[playerid] = 2; // Azonosítószám megadása FONTOS
    SpawnPlayer(playerid); // Játékos lespawnolása
SendClientMessage(playerid,0xbc0000,\"Ez még csak egy teszt parancs.\");
return 1;
}
return 0;
« Utoljára szerkesztve: 2011. április 24. - 00:56:56 írta ChuckNorris »

Nem elérhető NagyZ

[ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]
« Válasz #38 Dátum: 2011. április 18. - 16:27:19 »
0 Show voters
#define FILTERSCRIPT
#include <a_samp>
#pragma tabsize 0
static dmid[MAX_PLAYERS]={ -1};
public OnFilterScriptInit()
{
   print(\"\\n--------------------------------------\");
   print(\" DM zóna\");
   print(\" Készítõ: Lancer\");
   print(\" Ez alapján:\");
   print(\" http://sampforum.hu/index.php?topic=3967.0\");
   print(\"--------------------------------------\\n\");
   return 1;
}
public OnPlayerDisconnect(playerid,reason)
{
   dmid[playerid] = -1;
   return 1;
}
public OnPlayerSpawn(playerid)
{
   switch(dmid[playerid])
   {
       case 0: // 0-ás azonosítószámú dm zónához tartozó tevékenységek
       {
           SetPlayerPos(playerid,0.0,0.0,3.5); // Elhelyezés a dMben. Itt akár véletlenszeru spawnot is írhatunk, de az átláthatóság kedvéért maradjunk ennél
           SetPlayerFacingAngle(playerid,90.0); // Játékos írányba állítása; elforgatás
         ResetPlayerWeapons(playerid); // fegyverek elvétele <- FONTOS
         GivePlayerWeapon(playerid,4,1); // Felfegyverzés
         GivePlayerWeapon(playerid,34,10); // Felfegyverzés
         SetPlayerVirtualWorld(playerid,dmid[playerid]); // áthelyezés mási VW-be
      }
        case 1: // 1-es azonosítószámú dm zónához tartozó tevékenységek
       {
           SetPlayerPos(playerid,-1379.3,428.2,30.0); // Elhelyezés a dMben. Itt akár véletlenszeru spawnot is írhatunk, de az átláthatóság kedvéért maradjunk ennél
           SetPlayerFacingAngle(playerid,180.0); // Játékos írányba állítása; elforgatás
         ResetPlayerWeapons(playerid); // fegyverek elvétele <- FONTOS
         GivePlayerWeapon(playerid,24,100); // Felfegyverzés
         GivePlayerWeapon(playerid,34,10); // Felfegyverzés
         SetPlayerVirtualWorld(playerid,dmid[playerid]); // áthelyezés mási VW-be
      }
         case 2: // 2-es azonosítószámú dm zónához tartozó tevékenységek
       {
           SetPlayerPos(playerid,1379.3,-28.2,30.0); // Elhelyezés a dMben. Itt akár véletlenszeru spawnot is írhatunk, de az átláthatóság kedvéért maradjunk ennél
           SetPlayerFacingAngle(playerid,110.0); // Játékos írányba állítása; elforgatás
         ResetPlayerWeapons(playerid); // fegyverek elvétele <- FONTOS
         GivePlayerWeapon(playerid,20,100); // Felfegyverzés
         GivePlayerWeapon(playerid,32,10); // Felfegyverzés
         SetPlayerVirtualWorld(playerid,dmid[playerid]); // áthelyezés mási VW-be
      }
      default: // Alap spawn funkciók. Amikor a játékos NINCS DM-BEN ÉS ÚGY SPAWNOL
      {// Ide kell írni ami alap ból az OnPlayerSpawnnál volt
          GivePlayerMoney(playerid,100);
          GivePlayerWeapon(playerid,1,1);
          SetPlayerVirtualWorld(playerid,0); // Vissz*rakás az alap VW-be FONTOS
      }
   }
   return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(\"/exitdm\", cmdtext, true) == 0)
   {
        if(dmid[playerid] == -1) return SendClientMessage(playerid,0xbc0000, \"A parancs használatához elobb lépj be egy DM zónába!\");
      dmid[playerid] = -1;
      SpawnPlayer(playerid);
      return SendClientMessage(playerid,0xbc0000,\"Kiléptél a DeathMatch zónából.\");
   }else if(dmid[playerid] != -1) return SendClientMessage(playerid,0xbc0000,\"Elöbb lépj ki a dm-bõl!\");
if (strcmp(\"/dm1\", cmdtext, true) == 0)
   {
      dmid[playerid] = 0; // Azonosítószám megadása FONTOS
       SpawnPlayer(playerid); // Játékos lespawnolása
      SendClientMessage(playerid,0xbc0000,\"Ez még csak egy teszt parancs.\");
      return 1;
   }
if (strcmp(\"/dm2\", cmdtext, true) == 0)
   {
      dmid[playerid] = 1; // Azonosítószám megadása FONTOS
       SpawnPlayer(playerid); // Játékos lespawnolása
      SendClientMessage(playerid,0xbc0000,\"Ez még csak egy teszt parancs.\");
      return 1;
   }
if (strcmp(\"/dm3\", cmdtext, true) == 0)
   {
      dmid[playerid] = 2; // Azonosítószám megadása FONTOS
       SpawnPlayer(playerid); // Játékos lespawnolása
      SendClientMessage(playerid,0xbc0000,\"Ez még csak egy teszt parancs.\");
      return 1;
}
return 0;
}

 
Tessék, elvileg jó :)

Nem elérhető Epsilon

  • 1854
    • Profil megtekintése
[ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]
« Válasz #39 Dátum: 2011. április 18. - 17:25:11 »
0 Show voters
Frissítve!
Korrigáltam egy - a leírás elkészültekor észre nem vett - dolgot, mégpedig azt, hogy:
Nem lecsatlakozáskor kell \'üríteni\', hanem felcsatlakozáskor, ugyanis szerver-újraindítás esetén nem történik lecsatlakozás. (nem hívódik meg az eljárás)
Érdemes a szkriptjeitekben is átírni, nem kötelezõ, és a fent leírtakon kívül más hátránya sincs.

[ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]
« Válasz #40 Dátum: 2011. április 18. - 21:29:45 »
0 Show voters
Szép leírás.
 
Idézetet írta: Epsilon date=1269109967\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"1038\" data-ipsquote-contentclass=\"forums_Topic
(Nem ajánlom a definálást x)
 
Ezt kifejtenéd bõvebben mire érted és miért is?

Nem elérhető Epsilon

  • 1854
    • Profil megtekintése
[ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]
« Válasz #41 Dátum: 2011. április 23. - 10:52:48 »
0 Show voters
Lásd:
#define CSIPADM1 1
#define CSIPADM2 2
#define CSIPADM3 3
#define CSIPADM4 4
#define CSIPADM5 5
#define CSIPADM6 6
#define CSIPADM7 7
Lassítják az átfordítást és feleslegesek (olyan nehéz megjegyezni pár számot?)

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
[ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]
« Válasz #42 Dátum: 2011. április 23. - 11:34:27 »
0 Show voters
Ilyen esetben még nem annyira nehéz, de mondjuk ha van már 15+ DM-ed, akkor más a helyzet :D

[ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]
« Válasz #43 Dátum: 2011. április 23. - 16:58:51 »
0 Show voters
Azt értem hogy lassítják az átfordítást de megelõznek egy csomó hibát amit nem odafigyelés végett el lehet követni. Ezért én meg ajánlom a használatát.
Ha van CSIPAUZI dm és az már 14-es dm, szerintem egyszerûbb megjegyezni ha egy hivatkozást CSIPAUZI névre tesszük mint azt hogy dm egyenlõ-e 14-el. A pawn fordító meg ha most 100ms késõbb fordítja át akkor meg kibírom várni.
13 és 15 ezer sor közt ingázó módomat átlag 3700ms-4000ms alatt fordítja át, amiben van pár include fájl is. Szerintem ennyit igazán ki lehet bírni.

Rammstein

  • Vendég
[ Leírás ] DM zóna készítése [SPAWN, /EXITDM, EGYSZERU]
« Válasz #44 Dátum: 2011. április 23. - 22:20:35 »
0 Show voters
hasznáát veszeem

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal