Szerző Téma: [Leírás] 0.3c mapok berakása  (Megtekintve 20876 alkalommal)

Nem elérhető SaVage96

  • 65
  • SaVage96
    • Profil megtekintése
[Leírás] 0.3c mapok berakása
« Válasz #45 Dátum: 2011. július 29. - 19:17:54 »
0 Show voters
c:\\Server\\gamemodes\\erkel.pwn(46) : warning 202: number of arguments does not match definition
Erre a sorra panaszkodik:LoadMtaMap(\"stunt.map\", true);

Nem elérhető lusta19

  • 9084
  • £u$taÐi$znó
    • Profil megtekintése
[Leírás] 0.3c mapok berakása
« Válasz #46 Dátum: 2011. július 29. - 19:32:22 »
0 Show voters
Mód elejére ha nincs
 
#include <mtamap>

Nem elérhető SaVage96

  • 65
  • SaVage96
    • Profil megtekintése
[Leírás] 0.3c mapok berakása
« Válasz #47 Dátum: 2011. július 29. - 19:48:15 »
0 Show voters
Jelen van
Gondot okozhat ha más mtamap inc et használok
Ha pedig tefajtádot használom ott megint kap egy hibát az inc be:
C:\\Server\\pawno\\include\\mtamap.inc(192) : warning 219: local variable \"mod\" shadows a variable at a preceding level
« Utoljára szerkesztve: 2011. július 29. - 19:51:40 írta SaVage96 »

Nem elérhető Csabesz

  • 7827
    • Profil megtekintése
[Leírás] 0.3c mapok berakása
« Válasz #48 Dátum: 2011. július 29. - 20:12:33 »
0 Show voters
Azt használd amit Lusta kitett.


Az a baj vele(nem hiba de javítani kell), hogy a \"mod\" nevû változó már létezik.
Az inc-be nevezd át.

Nem elérhető SaVage96

  • 65
  • SaVage96
    • Profil megtekintése
[Leírás] 0.3c mapok berakása
« Válasz #49 Dátum: 2011. július 29. - 20:16:39 »
0 Show voters
Leirnád hogy hogy és hányadik sorba?

Nem elérhető Csabesz

  • 7827
    • Profil megtekintése
[Leírás] 0.3c mapok berakása
« Válasz #50 Dátum: 2011. július 29. - 21:28:45 »
0 Show voters
Idézetet írta: SaVage96 date=1311963399\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"7613\" data-ipsquote-contentclass=\"forums_Topic
Leirnád hogy hogy és hányadik sorba?
 
192.

Nem elérhető SaVage96

  • 65
  • SaVage96
    • Profil megtekintése
[Leírás] 0.3c mapok berakása
« Válasz #51 Dátum: 2011. július 29. - 22:20:25 »
0 Show voters
Roni feltennél egy javitott változatot,sehogyse sikerül

Nem elérhető maark

  • 565
    • Profil megtekintése
[Leírás] 0.3c mapok berakása
« Válasz #52 Dátum: 2011. július 30. - 00:15:16 »
0 Show voters
Ez mûködni fog mindenkinek :)
 
/*
MTA .map loader by mick88
   Release 0.2
12th December 2010
  Requirements: SSCANF2 plugin by Y_Less
  Stock functions:
     LoadMtaMap(file[], convert03c)    - loads .map file
     UnloadMtaMap(file[])          - unloads previously loaded .map file
     UnloadAll()                     - unloads all .map files
     IsMapLoaded(file[])             - returns true if map has been loaded (even if loaded partially)
  Supported map elements: objects, vehicles
  Supported object data: model, posX, posY, posZ, rotX, rotY, rotZ + SAMP 0.3c objects
  Supported vehicle data: model, paintjob, mods (upgrades), colors (2 colors),
               posX, posY, posZ, rotZ, interior, world (dimension),
               numberplate (0.3c only)
Changelog:
* 13th September 2010 ver 0.1:
- first release
* 12th December 2010 ver 0.2
-Added support for SA-MP 0.3c objects
-Added storing object/vehicle IDs
-Added function to unload single map
-This script is now an include
-Added support for custom vehicle numberplates (SA-MP 0.3c only)
-Added function to unload all current map files
-Added function checking if map is loaded
-Support for Incognito\'s streamer
    native UnloadMtaMap(file[MAX_MAP_FILE_PATH]);
    native LoadMtaMap(file[MAX_MAP_FILE_PATH], convert03c=false);
    native UnloadAll();
    native IsMapLoaded(file[MAX_MAP_FILE_PATH]);
   
*/
#include <sscanf2>
#define MAX_LOADED_ELEMENTS         5000   //Max number of vehicles + objects
#define MAX_MAP_FILE_PATH           80
#define VEHICLE_RESPAWN_DELAY       300
#define MAP_STREAM_DISTANCE          300.0
#if defined _streamer_included
    #define ADD_OBJECT(%1)             CreateDynamicObject(%1, interior, world, -1, MAP_STREAM_DISTANCE)
    #define DELETE_OBJECT(%1)          DestroyDynamicObject(%1)
#else                                   //Modify these if you use different streamer:
    #define ADD_OBJECT(%1)             CreateObject(%1, MAP_STREAM_DISTANCE)
#define DELETE_OBJECT(%1)           DestroyObject(%1)
#endif
#define MAX_MODS                14
#define MAX_NUMBERPLATE             9
#define ELEMENT_TYPE_NONE         0
#define ELEMENT_TYPE_OBJECT         1
#define ELEMENT_TYPE_VEHICLE      2
enum MapElement
{
eElementID,
eElementType,
eElementSource[MAX_MAP_FILE_PATH]
}
new
Float: MapElements[MAX_LOADED_ELEMENTS][MapElement],
MinElementID = 0;
stock NextElementID()
{
Increment:
MinElementID++;
if (MinElementID == MAX_LOADED_ELEMENTS)
{
    print(\"ERROR: Cannot load any more map elements. Current maximum \"#MAX_LOADED_ELEMENTS\" has been reached!\");
return false;
}
if (MapElements[MinElementID][eElementType])    goto Increment;
return true;
}
// :::::::::::::::::::::::::: STOCK FUNCTIONS :::::::::::::::::::::::::::
stock UnloadMtaMap(file[])
{
new n;
for (new id=MAX_LOADED_ELEMENTS-1; id >= 0; id--) if (MapElements[id][eElementType] && strcmp(file, MapElements[id][eElementSource], false, MAX_MAP_FILE_PATH) == 0)
{
    switch (MapElements[id][eElementType])
    {
        case ELEMENT_TYPE_OBJECT:    DELETE_OBJECT(MapElements[id][eElementID]);
        case ELEMENT_TYPE_VEHICLE:  DestroyVehicle(MapElements[id][eElementID]);
    }
    MapElements[id][eElementID]       = 0;
    MapElements[id][eElementType]      = ELEMENT_TYPE_NONE;
    MapElements[id][eElementSource][0]    = \'\\0\';
    MinElementID                   = id;
}
return n;
}
stock IsMapLoaded(file[])
{
for (new id=MAX_LOADED_ELEMENTS-1; id >= 0; id--) if (MapElements[id][eElementType] && strcmp(file, MapElements[id][eElementSource], false, MAX_MAP_FILE_PATH) == 0) return true;
return false;
}
stock UnloadAll()
{
new n;
for (new id=MAX_LOADED_ELEMENTS-1; id >= 0; id--) if (MapElements[id][eElementType])
{
    switch (MapElements[id][eElementType])
    {
        case ELEMENT_TYPE_OBJECT:    DELETE_OBJECT(MapElements[id][eElementID]);
        case ELEMENT_TYPE_VEHICLE:  DestroyVehicle(MapElements[id][eElementID]);
    }
    MapElements[id][eElementID]       = 0;
    MapElements[id][eElementType]      = ELEMENT_TYPE_NONE;
    MapElements[id][eElementSource][0]    = \'\\0\';
    MinElementID                   = id;
}
return n;
}
stock LoadMtaMap(file[], convert03c=false)
{
if (!fexist(file) || MinElementID == MAX_LOADED_ELEMENTS)
{
    printf(\"Map %s cannot be loaded\", file);
return 0;
}
new File:MapFile=fopen(file),
n, string[400], numberplate[MAX_NUMBERPLATE],
Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz,
modelid, paintjob, interior, world,
t = GetTickCount();
while(fread(MapFile, string))
{
    if (!sscanf(string, \"p<\\\">\'object\'\'model=\'d\'interior=\'d\'dimension=\'d\'posX=\'f\'posY=\'f\'posZ=\'f\'rotX=\'f\'rotY=\'f\'rotZ=\'f\", modelid, interior, world, x, y, z, rx, ry, rz))
{
        if (convert03c)
        {
            switch(modelid)
       {
           case 14383..14483:    modelid += 4248;
         case 14770..14856:    modelid += 4063;
         case 14858..14871:    modelid += 4062;
         case 18000..18036:    modelid += 934;
         case 18038..18101:    modelid += 933;
         case 14872..14883:    modelid += 4163;
         case 14885..14891:    modelid += 4162;
         case 13590..13667:    modelid += 5142;
         case 14500..14522:    modelid += 4310;
         case 12835..12944:    modelid -= 6219;
         case 14892:       modelid += 5009;
       }
        }
        //modelid x y z rx ry rz interior world
        new objectid = ADD_OBJECT(modelid, x, y, z, rx, ry, rz);
        if (objectid == INVALID_OBJECT_ID) printf(\"Error, object could not be created. Make sure you don\'t exceed max number of objects. Use stramer if you need to create more than %d objects!\", MAX_OBJECTS);
        else
        {
            #if defined _streamer_included
           Streamer_SetFloatData(STREAMER_TYPE_OBJECT, objectid, E_STREAMER_DRAW_DISTANCE, MAP_STREAM_DISTANCE);
      #endif
            MapElements[MinElementID][eElementType]    = ELEMENT_TYPE_OBJECT;
            MapElements[MinElementID][eElementID]       = objectid;
            strcp(file, MapElements[MinElementID][eElementSource]);
            //MapElements[MinElementID][eElementSource]    = file;
            n++;
            //printf(\"Object %d loaded into slot %d\", objectid, MinElementID);
      if (!NextElementID())
      {
          fclose(MapFile);
         return n;
      }
        }
    }
    else if (!sscanf(string, \"p<\\\">\'vehicle\'\'paintjob=\'d\'model=\'d\'plate=\'s[\"#MAX_NUMBERPLATE\"]\'interior=\'d\'dimension=\'d\'posX=\'f\'posY=\'f\'posZ=\'f\'rotZ=\'f\", paintjob, modelid, numberplate, interior, world, x, y, z, rz))
    {
        new col1, col2, colors[20], mods[80], modd[MAX_MODS];
        sscanf(string, \"p<\\\">\'color=\'s[20] \", colors);
        sscanf(string, \"p<\\\">\'upgrades=\'s[80] \", mods);
        sscanf(colors, \"p<,>dd\", col1, col2);
        sscanf(mods, \"p<,>A<d>(0)[\"#MAX_MODS\"]\", modd);
       
        //modelid x y z rz col1 col2 paintjob interior world
   new vehicleid = CreateVehicle(modelid, x, y, z, rz, col1, col2, VEHICLE_RESPAWN_DELAY);
   if (vehicleid == INVALID_VEHICLE_ID) print(\"Vehicle failed to load! Check if you exceeded maximum of 2000 vehicles\");
   else
   {
       SetVehicleNumberPlate(vehicleid, numberplate);
       SetVehicleToRespawn(vehicleid);
       for (new i; i < MAX_MODS; i++) if (modd) AddVehicleComponent(vehicleid, modd);
            ChangeVehiclePaintjob(vehicleid, paintjob);
            LinkVehicleToInterior(vehicleid, interior);
            SetVehicleVirtualWorld(vehicleid, world);
           
            MapElements[MinElementID][eElementType]    = ELEMENT_TYPE_VEHICLE;
            MapElements[MinElementID][eElementID]       = vehicleid;
            strcp(file, MapElements[MinElementID][eElementSource]);
            //MapElements[MinElementID][eElementSource]    = file;
            n++;
            //printf(\"Vehicle %d loaded into slot %d\", vehicleid, MinElementID);
      if (!NextElementID())
      {
          fclose(MapFile);
         return n;
      }
   }
    }
}
fclose(MapFile);
printf(\"%d items loaded from \'%s\' in %dms\", n, file, GetTickCount()-t);
return n;
}
stock strcp(from[], to[])
{
new i;
for (i = 0; from; i++) to = from;
to = \'\\0\';
}
/*
Copyright 2010 Michael Dabski (mick88)
This script is my intelectual property. Please respect that and keep my credits where they are.
You are free to modify this script or use parts of the code as long as you give me credit for my work.
*/

Nem elérhető lusta19

  • 9084
  • £u$taÐi$znó
    • Profil megtekintése
[Leírás] 0.3c mapok berakása
« Válasz #53 Dátum: 2011. július 30. - 06:07:09 »
0 Show voters
a \"Mod\" helyett mindenhol át kell írni Modd-ra  az inc-ben
De nekem ilyen problémáim nem voltak  ;D

Nem elérhető SaVage96

  • 65
  • SaVage96
    • Profil megtekintése
[Leírás] 0.3c mapok berakása
« Válasz #54 Dátum: 2011. július 30. - 09:30:52 »
0 Show voters
Kösz hibátlanul müködik

[Leírás] 0.3c mapok berakása
« Válasz #55 Dátum: 2011. augusztus 02. - 13:09:30 »
0 Show voters
Nekem lelassítják az objektek az mta-mat, mindent lassan tölt be.
Ez mitõl van?

Nem elérhető lusta19

  • 9084
  • £u$taÐi$znó
    • Profil megtekintése
[Leírás] 0.3c mapok berakása
« Válasz #56 Dátum: 2011. augusztus 02. - 17:28:50 »
0 Show voters
Idézetet írta: Keszeg date=1312283370\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"7613\" data-ipsquote-contentclass=\"forums_Topic
Nekem lelassítják az objektek az mta-mat, mindent lassan tölt be.
Ez mitõl van?
 
Mert szar, ez ilyen sajnos

Nem elérhető Ð

[Leírás] 0.3c mapok berakása
« Válasz #57 Dátum: 2011. augusztus 04. - 21:48:13 »
0 Show voters
Én GTA Deluxe Map Convertert használok, azzal sokkal praktikusabb, viszont ha az nem lenne, ezt a megoldást válassztanám, szép. :)

Nem elérhető lusta19

  • 9084
  • £u$taÐi$znó
    • Profil megtekintése
[Leírás] 0.3c mapok berakása
« Válasz #58 Dátum: 2011. augusztus 05. - 18:21:53 »
0 Show voters
Idézetet írta: Ð date=1312487293\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"7613\" data-ipsquote-contentclass=\"forums_Topic
Én GTA Deluxe Map Convertert használok, azzal sokkal praktikusabb, viszont ha az nem lenne, ezt a megoldást válassztanám, szép. :)
 
0.3c mapokhoz biztos nem használsz Deluxe  map konvertert és mást , mivel úgy nem fogja megjeleníteni az új objeckteket

Nem elérhető Buba

  • 540
    • Profil megtekintése
[Leírás] 0.3c mapok berakása
« Válasz #59 Dátum: 2011. augusztus 12. - 09:13:34 »
0 Show voters
Nem tudnátok linkelni egy 0.3c objectes MTA-t?

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal