Jump to content

Decipher Language [0.1]


Recommended Posts

DECIPHER 0.1 (TUTORIAL)

Deci, sa incep cu inceputul.Decipher Language este un limbaj pentru PAWN (defapt, sunt functile/public-urile PAWN redefinite).L-am facut in asa fel incat atunci cand scriptezi sa fie mai usor (pentru mine chiar e) si mai frumos.Cu timpul, o sa mai fac cateva "update"-uri acestui fisier (o sa redefinesc mai multe functii si public-uri noi).

  • CORE
    Acum ca ati ajuns la acest punct, presupun ca va intrebati ce este "core" in Decipher.Pai "core" este echivalentul la "stock" si se foloseste la fel ca "stock".Un exemplu normal a "stock"-ului pName:
    [pawn]stock pName ( playerid )
    {
        new
            _Darky [ MAX_PLAYER_NAME ]
        ;
        GetPlayerName ( playerid , _Darky , sizeof ( _Darky ) ) ;
        return ( _Darky ) ;
    }[/pawn]

    Cam asa va arata cu Decipher:
    [pawn]core pName ( playerid )
    {
        make
            _Darky [ MAX_PLAYER_NAME ]
        ;
        GetPlayerName ( playerid , _Darky , sizeof ( _Darky ) ) ;
        end ( _Darky ) ;
    }[/pawn]

  • END
    In Decipher, "end" tine locul lui "return".Ex:
    [pawn]callback DECIPHER::PLAYER_CONNECT ( playerid )
    {
        end ( x ) ;
    }[/pawn]

    La fel ca "return", el reintoarce doua valori, acestea fiind x (true) si y (false).

  • MAKE
    Pur si simplu, "make" inlocuieste "new".Ex:
    [pawn]new
        bool: Test [ MAX_PLAYERS ]
    ;[/pawn]

    Si cam asa arata folosind Decipher:
    [pawn]make
        bool: Test [ MAX_GAMERS ]
    ;[/pawn]

  • CALLBACK
    Cuvantul "callback" inlocuieste cuvantul "public".Ex:
    [pawn]public OnPlayerSpawn ( playerid )[/pawn]

    Va devenii:
    [pawn]callback OnPlayerSpawn ( playerid )[/pawn]

  • PARSE
    Functia "parse" este echivalentul functiei "format".

  • MAX_GAMERS
    MAX_GAMERS este folosit in loc de MAX_PLAYERS.

Dowload

[download]http://www.solidfiles.com/d/2b4e932af7/[/download]

Link to comment
Share on other sites

Si care ar fi scopul? De ce sa complici lucrurile cand sunt deja foarte simple?

Din ce vad eu, sunt unele constante care nu-si au rostul si mai cauzeaza si probleme.

#define       x                                  true
#define       y                                  false

Liniile astea doua mai mult ca sigur vor strica orice script (presupunand ca scriptul respectiv foloseste variabilele x si y).

Pai, initial, nu am facut acest fisier pentru al face public sau pentru alte motive, l-am facut pentru mine (sa incerc sa scriptez in felul in care imi place) pentru ca stiam ca nu o sa il foloseasca nimeni.Eu doar vroiam sa aud parerile voastre (cum ar fi daca s-ar scripta asa, etc.).Cat despre acele constante "care nu isi au rostul si mai cauzeaza si probleme", chiar nu m-am gandit la asta.Adica, am facut acest fisier dupa cum imi merge mie mintea si eu nu as face niciodata o variabila sau orice altceva care sa se numeasca x sau y.

Link to comment
Share on other sites

Si care ar fi scopul? De ce sa complici lucrurile cand sunt deja foarte simple?

Din ce vad eu, sunt unele constante care nu-si au rostul si mai cauzeaza si probleme.

#define       x                                  true
#define       y                                  false

Liniile astea doua mai mult ca sigur vor strica orice script (presupunand ca scriptul respectiv foloseste variabilele x si y).

Corect.

Cum ai spus si tu Darky in ultimul reply de aici, nu ar ajuta la nimic, ba mai mult incurca mai ales pe incepatori.

Asta imi aduce aminde de Calgon cu LOLCode-ul lui.

Imi place sintaxa totusi, DECIPHER::INIT_FILTERSCRIPT, arata bine!

Just Rock

Link to comment
Share on other sites

interesant :]] . . .

10/10 pentru ca lai facut sub forma de include .

::P Poate vei face ceva uppdate ..

[tt]#define      INIT_GAMEMODE                      OnGameModeInit

#define      EXIT_GAMEMODE                      OnGameModeEixt

#define      INIT_FILTERSCRIPT                  OnFilterScriptInit

#define      EXIT_FILTERSCRIPT                  OnFilterScriptExit

#define      PLAYER_TEXT                        OnPlayerText

#define      PLAYER_SPAWN                      OnPlayerSpawn

#define      PLAYER_DEATH                      OnPlayerDeath

#define      PLAYER_UPDATE                      OnPlayerUpdate

#define      PLAYER_CONNECT                    OnPlayerConnect

#define      PLAYER_STREAM_IN                  OnPlayerStreamIn

#define      PLAYER_STREAM_OUT                  OnPlayerStreamOut

#define      PLAYER_DISCONNECT                  OnPlayerDisconnect

#define      PLAYER_COMMAND_TEXT                OnPlayerCommandText

#define      PLAYER_EXIT_VEHICLE                OnPlayerExitVehicle

#define      PLAYER_STATE_CHANGE                OnPlayerStateChange

#define      PLAYER_MOVED_OBJECT                OnPlayerObjectMoved

#define      PLAYER_REQUEST_CLASS              OnPlayerRequestClass

#define      PLAYER_ENTER_VEHICLE              OnPlayerEnterVehicle

#define      PLAYER_REQUEST_SPAWN              OnPlayerRequestSpawn

#define      PLAYER_PICK_UP_PICKUP              OnPlayerPickUpPickup

#define      PLAYER_KEY_STATE_CHANGE            OnPlayerKeyStateChange

#define      PLAYER_CHANGE_INTERIOR            OnPlayerInteriorChange

#define      PLAYER_ENTER_CHECKPOINT            OnPlayerEnterCheckpoint

#define      PLAYER_LEAVE_CHECKPOINT            OnPlayerLeaveCheckpoint

#define      PLAYER_ENTER_RACE_CHECKPOINT      OnPlayerEnterRaceCheckpoint

#define      PLAYER_LEAVE_RACE_CHECKPOINT      OnPlayerLeaveRaceCheckpoint

#define   end return

#define   core                              stock

#define   callback public

#define      x                                  true

#define      y                                  false

#define      make                              new

#define      MAX_GAMERS                        MAX_PLAYERS

#define      parse                              format

[/tt]

sunt frumos definite :]

God job .

EDIT: Poate vei face un new.pwn cu aceste definitii .. intelegi tu  :]

7bdea99b11.png

rimmon curv.

Link to comment
Share on other sites

tare al tau darky dar si eu am unu e mai rapid xD. Si nu incurca xD.

P.S:

Chiar ca LoLinclude =))

#include <a_samp>
#include <lolcode-2.0>

main() FURBALLCUMIN
    FAX("[debug] LOLCode 2.0 initialised.")OK
    SPACECATGOHOME
ITCAME

WWW OnGameModeInit() FURBALLCUMIN
    CATCOLLARS3D("I'm at the coordinates:\n30.0,40.0,50.0",0x008080FF,30.0,40.0,50.0,40.0,0);
    
    SPACECATGOHOME
ITCAME

WWW OnPlayerConnect(playerid) FURBALLCUMIN
    CANHAS szPlayerName[MAX_PLAYER_NAME]OK
    GetPlayerName(playerid, szPlayerName, MAX_PLAYER_NAME)OK
    if(!ISCATSAME(szPlayerName, "MaTrIx4057")) FURBALLCUMIN
        // u critic u mad
        UMAD(playerid)OK
    ITCAME
    
    if(!ISCATSAME(szPlayerName, "Max_Coldheart")) FURBALLCUMIN
        UEVENMADDER(playerid)OK
    ITCAME
    
    SENDCLIENTCATS(playerid, DATWHITECAT, "sup brew?")OK
ITCAME

I'm back bitches.

Link to comment
Share on other sites

Corect.

Cum ai spus si tu Darky in ultimul reply de aici, nu ar ajuta la nimic, ba mai mult incurca mai ales pe incepatori.

Asta imi aduce aminde de Calgon cu LOLCode-ul lui.

Imi place sintaxa totusi, DECIPHER::INIT_FILTERSCRIPT, arata bine!

Nu am spus ca o sa ii ajute prea mult pe incepatori, iar in urmatoarea versiune, o sa modific valorile pe care le va reintoarce end.

EDIT: Poate vei face un new.pwn cu aceste definitii .. intelegi tu  :]

Chiar o sa fac, multumesc de idee.

tare al tau darky dar si eu am unu e mai rapid xD. Si nu incurca xD.

P.S:

Chiar ca LoLinclude =))

Multumesc, dar LOLCode nu este mai rapid, doar ca LOLCode are mai putine definitii ca al meu.

Link to comment
Share on other sites

Prima oara cand am vazut asta, am crezut ca ai facut un include, care se mai "accelereze" aceste functii (nu sunt chiar sigur daca este posibil), dar sunt doar defineuri ? ...

Si care ar fi scopul? De ce sa complici lucrurile cand sunt deja foarte simple?

Din ce vad eu, sunt unele constante care nu-si au rostul si mai cauzeaza si probleme.

#define       x                                  true
#define       y                                  false

Liniile astea doua mai mult ca sigur vor strica orice script (presupunand ca scriptul respectiv foloseste variabilele x si y).

Corect. Ar fi bine sa isi defineze fiecare singur aceste functii. Si in +, care-i problema la true si false? Daca ar fi dupa aspect, arata mai tare ca x, y xD

NexT. link=topic=27012.msg143519#msg143519 date=1369217402]

Si ma rog de ce e asta sticky?

Same question ...

Fara reclama in semnatura!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.