Jump to content

Banditul

Moderator
  • Posts

    1,134
  • Joined

  • Last visited

  • Days Won

    96

Posts posted by Banditul

  1. spacer.png

    Discord

    SampSharp is a plugin and library which allows you to write SA-MP game modes in C#. The plugin works both on Linux and Windows. The library contains various classes for every type of resource available in SA-MP (players, vehicles, textdraws, etc). Aside from this wrapper around native functions, the library also contains a good structure to build your gamemode on. This plugin was initially released in 2014, and has received a good ever since and I'm still available for any questions related to this plugin.

    SampSharp provides two structures for developing game modes. SampSharp.GameMode and SampSharp.Entities.

    SampSharp.GameMode provides a simple object-oriented structure for developing your game mode. All callbacks are forwarded to the implementation of BaseMode and vanilla callbacks are forwarded as events to the related instances (eg. OnPlayerText fires the PlayerText event on the related Player instance). A simple code sample can be found below.

    public class GameMode : BaseMode
    {
        protected override void OnPlayerConnected(BasePlayer player, EventArgs e)
        {
            base.OnPlayerConnected(player, e);
    
            player.SendClientMessage($"Welcome {player.Name}, to a whole new world!");
        }
    
        [Command("spawn")]
        public static void VehicleCommand(BasePlayer player, VehicleModelType model)
        {
            Console.WriteLine($"Spawning a {model} for {player.Name}");
            var vehicle = GtaVehicle.Create(model, player.Position + new Vector3(0, 0, 0.5f), player.Rotation.Z);
            player.PutInVehicle(vehicle);
            player.SendClientMessage(Color.GreenYellow, $"You have spawned a {model}!");
        }
    } 

    SampSharp.Entities (only available since early 2020) provides an Entity-Component-System structure with full dependency injection support for developing your game mode. SampSharp.Entities is still in active development but is already stable and usable. Below, a similar code sample can be found:

    public class SampleSystem : ISystem
        {
            [Event]
            public void OnPlayerConnected(Player player)
            {
                player.SendClientMessage($"Welcome {player.Name}, to a whole new world!");
            }
    
            [PlayerCommand("spawn")]
            public static void VehicleCommand(Player player, VehicleModelType model, IWorldService worldService)
            {
                Console.WriteLine($"Spawning a {model} for {player.Name}");
                var vehicle = worldService.CreateVehicle(model, player.Position + new Vector3(0, 0, 0.5f), player.Rotation.Z, -1, -1);
                player.PutInVehicle(vehicle);
                player.SendClientMessage(Color.GreenYellow, $"You have spawned a {model}!");
            }
        } 

    Download

    https://github.com/ikkentim/SampSharp/releases

    Documentation

    Our documentation website is still in development and some vital documentation is still lacking. If you need any assistance, feel free to join our Discord server!

    https://sampsharp.net

    • Thanks 2
  2. Acum 3 ore, -=[Vyorel]=- a spus:

    Inca imi aduc aminte acum cativa ani, cand inca era pe SMF sa-mp.ro si am facut wiki.sa-mp.ro in speranta ca vor fi destui voluntari sa bage articole pe el.
    Acum, intr-un fel parca va pare rau (la cate unii) ca nu ati vrut sa dati copy+paste. Era bun. :)

    Ce ne-a mai ramas, noua, ar fi asta

    https://www.sa-mp.ro/documentation/

    Dar si aici bate vantul.

    Putem contribui la https://www.open.mp/docs/index la proiectul asta https://github.com/openmultiplayer/wiki din ce am vazut s-a ajuns destul de departe integrtand mare parte din vechiul wiki

  3. Acum 25 minute, Mister a spus:

    Sa vedem acum ce se va alege de scripterii nostri, daca comunitatea .com este inchisa nu prea mai au de unde sa ia functii, includeuri, pluginuri, mape si totul gata facut sa le dea copy paste, cat despre probleme tot acolo se gaseau rezolvari, pentru ca inainte de problema lor mai erau 10 topicuri acolo cu problema si rezolvarea.

    Alternativa este burgershot.gg doar ca in momentul de fata nu e chiar atat de populara/cunoscuta si contine putine resurse la momentul actual. Dar da, toate resursele de la tutoriale la simple intrebari care iti oferau raspuns la problema ta au disparut in neant, desigur mai e si partea de webarchive care iti ofera un snapshot a forumului salvata de catre cineva dar cei de la webarchive nu au bani si website-ul este destul de lent/poate pica la numar prea mare de useri

  4. public PNSPlaja(playerid)

    Daca functia necesita playerid doar ca va fi nevoie sa o chemi cu playerid de unde vrei sa o chemi

    Scriptu nu are de unde sa stie la ce player te referi daca nu ii spui tu, daca era un limbaj de programare bazat pe obiecte si referinta clar era mai usor de facut sa stie ce player

    • Thanks 1
  5. Daca te referi la eroarea

    Citat

    fatal error 100: cannot read from file: "include"

    Fi sigur ca compilatorul cu care compilezi scriptul este cel corect (in cazul in care folosesti ceva ca sublime care necesita locatia pawno). De preferat incearca sa deschi scriptul cu pawno care se gaseste in folderul scriptului si sa verifici daca cu ala mai ai problema pentru ca odata ce ai pus fisierul in folderul includes nu ar trebui sa mai fie problema asta(deasemenea sa fie corect si #include <sscanf2> )

    • Like 1
  6. Daca nu iti apare dialogurile de login/register inseamna ca 

    public OnPlayerConnect(playerid){
        incercariParola[playerid] = 0;

        gQuery[0] = EOS;
        mysql_format(SQL, gQuery, sizeof(gQuery), "SELECT  * FROM `users` WHERE `Name`= '%s' LIMIT 1", GetName(playerid));
        mysql_tquery(SQL, gQuery ,"checkAccount", "i" , playerid);
        return 1;
    }

    Nu isi face treaba. Cel mai bine este sa verifici mysql log/serverlog de erori

  7. Acum 42 minute, Mihaiandrey a spus:

    cum mereg sv fara mysql ma ?

    Un gm nu are nevoie de mysql ca sa functioneze. Poate la fel de bine sa salveze datele in fisiere fara a fi nevoie de o baza de date, sau poate sa fie SQLite si sa fie baza de date locala

    Edit: Intradevar este gm care se foloseste de dini, cel mai antic mod de a salva date dar merge

  8. Acum 52 minute, KB.HERO a spus:

    Tu in loc sa scoti acelea 30k lini tu le ai adaugat :D 

    Am si eu o intrebare mai stupida, de cand numarul linilor de conteaza sau influenteaza functionarea unui script? Daca ai 5000000 tot nu influenteaza cu nimic, conteaza ce ai facut in acele lini. Sau mai nou masori perfornanta unui sistem in numarul de lini?

    PS: Success cu vanzarea

    • Haha 1
  9. Ca sa completez putin  din ce a spus deja Vyorel mai ales la 3. Daca vrei sa mergi pe acest drum de dezvoltare software/web chiar recomand sa inveti alte limbaje de programare. Experienta pe care am avut-o invatand a fost una placuta si mi-as fi dorit sa fi inceput sa invat mai repede decat am facut-o dar la sfarsit tot am iesit castigat.

    PS: HTHML/CSS nu sunt limbaje de programare 😁

  10. https://stackoverflow.com/questions/50690076/phpmyadmin-error-incorrect-format-parameter

    Problema e ca fisierul .sql pe care il incarci e prea mare. Avand in vedere ca pe host nu ai control asupra serverului de MySQL nu poti modifica setarile(daca ai access totusi le poti modifica conform raspunsurilor din acel link). Daca nu ai access solutia e sa stergi din fisierul .sql toate conturile/logs etc (toate datele legate de INSERT INTO (cele care nu sunt necesare desigur, ca doar nu vrei sa stergi ceva de care gm are nevoie)). Sau eventual sa compresezi fisierul astfel incat sa fie suficient de mic

    • Upvote 1
×
×
  • 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.