Jump to content

ostatní [Anketa]Programovani modu v D


Deleted User

  

29 members have voted

  1. 1. Chteli by ste zkusit programovat mod v jazyku D misto pawna?

    • Ano
      24
    • Ne
      4
    • Ja neumim ani pawn a ne jeste D
      1


Recommended Posts

Zdravim ve spolek,

 

zajimalo by me, jestli by tady mel nekdo zajem psat SAMP mod v jazyku D misto pawna. Mod by se kompiloval jako .so/.dll plugin misto .amx, jinak by mel stejne callbacky a fce jako pawn.

 

Kdyz tak hlasujte v ankete.

Dekuji

Link to comment
Share on other sites

Môžem sa tak nejak spýtať na dôvod a výhody/nevýhody programovania v D?

Pretože tak nejako nevidím dôvod prechádzať z osvedčeného PAWN ktoré už poniektorí ovládajú na nejaký D jazyk.

Link to comment
Share on other sites

Môžem sa tak nejak spýtať na dôvod a výhody/nevýhody programovania v D?

Pretože tak nejako nevidím dôvod prechádzať z osvedčeného PAWN ktoré už poniektorí ovládajú na nejaký D jazyk.

 

Vyhody:

o Moznost plne vyuzit objektove programovanie v D

o Rychlost

o Moznost psat komplexnejsi mody na desitky tisic radku tak, aby v tom nebyl bordel

o Neni problem nacist 10k aut ze souboru nebo z DB a pak je streamovat ve hre.

 

 

Nevyhody:

o Server musi podporovat pluginy

o D je slozitejsi jazyk nez pawn

 

 

Je toho tak mnoho, ze bych to nenapsal ani za tyden. viz, co vsechno obsahuje D http://dlang.org/spec/spec.html

 

Tak napr. bys mohl vytvorit Player classu misto playerid (int).

 

class Player {

static Player[] onlinePlayers;

 

float health;

float ammo;

int money;

 

void setHealth(float hp) { .... }

}

 

a pak mit treba:

void OnPlayerEnterVehicle(Player player) {

    player.setHealth(42);

}

 

nebo nejaky command, treba:

mixin RegisterCommand("/pfh", 4, &command_paidForHealth); // 4 - admin lvl, treba

void command_paidForHealth() {

    Player.onlinePlayers.find(x => x.money > 50000).invoke((x) {

        x.setHealth(100);

        x.addMoney(-50000);

    });

}

 

command nastavi kazdemu pripojenemu hraci hp na 100 a vezme mu 50k, kdyz ma vic jak 50k

Link to comment
Share on other sites

Ewwe ono by to šetřilo čas pro tebe ale musíš brát v potaz že většina neumí pořádně ani v tom .pwn

Takže když je D složitější potom by mě zajímalo kolik lidí to vůbec využije :/

Každopádně já jsem pro ale přepisovat mód nebudu :-D

Link to comment
Share on other sites

  • Administrátor

Ewwe ono by to šetřilo čas pro tebe ale musíš brát v potaz že většina neumí pořádně ani v tom .pwn

Takže když je D složitější potom by mě zajímalo kolik lidí to vůbec využije :/

Každopádně já jsem pro ale přepisovat mód nebudu :-D

 

Jasně ale prece tu nikdo nebude nikoho nutit aby v tom dělal.. Satoshi se ptá jestli by vtom někdo chtěl dělat mod. Ne že od zitřka se pawn ruší a ofiko jazyk bude Dawn :d

Link to comment
Share on other sites

  • Globální moderátor

Jake problemy by to resilo ? :d

 

tak prvně jsem se naučil Pawn a pak jsem zjistil a naučil se C# OOP programování. Když jsem objevil OOP tak to byly takové druhé Vánoce :d 

 

každopádně by se vytvořila jedna třída která by se namnožila, přistupovalo by se k ní snáž, mohla by mít jednodušeji vlastnosti atd.. :) Zato v Pawn se pro každou vlastnost musí vytvořit další část pole a je to zdlouhavé a i ty musíš uznat, že když je to vše v jednom souboru tak i nepřehledné. 

 

A jak psal Ewwe, ušetřil by se hlavně čas. Stejně bych radši bral mody v C# ve kterém umím :d

Link to comment
Share on other sites

  • Hlavní moderátor

Nevím, co tu řešíte, Bloodman to napsal jasně, kdo by si to chtěl zkusit. Nikdo nikoho nenutí to používat. Možnost je to imho zajímavá pro ty, kdo se orientují v OOP a vývoj v pawn jim přijde časově náročnější. Já bych do toho šel.

 

Btw, líbí se mi, jak je u možnosti "Ja neumim ani pawn a ne jeste D" stále stav nula. :d

Link to comment
Share on other sites

Budeš přidávat, když tak i nějaké tutoriály? :)

 

jasne. Premyslal som, ze by som niektore terajsie tutoriali prepisal do D. Aspon by bolo vidiet v com sa to lisi a ako sa to da aj lepsie naprogramovat :d

tak prvně jsem se naučil Pawn a pak jsem zjistil a naučil se C# OOP programování. Když jsem objevil OOP tak to byly takové druhé Vánoce :d

 

každopádně by se vytvořila jedna třída která by se namnožila, přistupovalo by se k ní snáž, mohla by mít jednodušeji vlastnosti atd.. :) Zato v Pawn se pro každou vlastnost musí vytvořit další část pole a je to zdlouhavé a i ty musíš uznat, že když je to vše v jednom souboru tak i nepřehledné. 

 

A jak psal Ewwe, ušetřil by se hlavně čas. Stejně bych radši bral mody v C# ve kterém umím :d

 

Nawrapovat C# na SAMP je trochu problem. Existuje sice SampSharp, ale pisat v tom mod je strasne narocne. Myslim, ze sa tie veci daju napisat v D jednoduhsie.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...