Pomoc!!!!!!!!!!!!!!!!!!!

Započeo [AG] N1n0, Decembar 23, 2009, 22:49:56 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Ovako ja sam u pawnu uradio ovo:

//----------------------------------------------------------
//
//  GRAND LARCENY  1.0
//  A freeroam gamemode for SA-MP 0.3
//
//----------------------------------------------------------

#include <a_samp>
#include <core>
#include <float>
#include "../include/gl_common.inc"
#include "../include/gl_spawns.inc"

#pragma tabsize 0

//----------------------------------------------------------

#define COLOR_WHITE       0xFFFFFFFF
#define COLOR_NORMAL_PLAYER 0xFF4444FF

#define CITY_LOS_SANTOS    0
#define CITY_SAN_FIERRO    1
#define CITY_LAS_VENTURAS    2

new total_vehicles_from_files=0;

// Class selection globals
new gPlayerCitySelection[MAX_PLAYERS];
new gPlayerHasCitySelected[MAX_PLAYERS];
new gPlayerLastCitySelectionTick[MAX_PLAYERS];

new Text:txtClassSelHelper;
new Text:txtLosSantos;
new Text:txtSanFierro;
new Text:txtLasVenturas;

//----------------------------------------------------------

main()
{
   print("\n---------------------------------------");
   print("Running DM Srbija - by the [HEAD]Swat001\n");
   print("---------------------------------------\n");
}

//----------------------------------------------------------

public OnPlayerConnect(playerid)
{
   GameTextForPlayer(playerid,"~w~DM Srbija ",3000,4);
     SendClientMessage(playerid,COLOR_WHITE,"Dobrodosli na Srpski DM server!!!");
     
     // class selection init vars
     gPlayerCitySelection[playerid] = -1;
   gPlayerHasCitySelected[playerid] = 0;
   gPlayerLastCitySelectionTick[playerid] = GetTickCount();

   //SetPlayerColor(playerid,COLOR_NORMAL_PLAYER);
   
   return 1;
}

//----------------------------------------------------------

public OnPlayerSpawn(playerid)
{
   if(IsPlayerNPC(playerid)) return 1;
   
   new randSpawn = 0;
   
   SetPlayerInterior(playerid,0);
   TogglePlayerClock(playerid,0);
   ResetPlayerMoney(playerid);
   GivePlayerMoney(playerid, 30000);
   
   // if they ever return to class selection make them city
   // select again first
   gPlayerHasCitySelected[playerid] = 0;

   if(CITY_LOS_SANTOS == gPlayerCitySelection[playerid]) {
       randSpawn = random(sizeof(gRandomSpawns_LosSantos));
       SetPlayerPos(playerid,
       gRandomSpawns_LosSantos[randSpawn][0],
       gRandomSpawns_LosSantos[randSpawn][1],
       gRandomSpawns_LosSantos[randSpawn][2]);
      SetPlayerFacingAngle(playerid,gRandomSpawns_LosSantos[randSpawn][3]);
   }
   else if(CITY_SAN_FIERRO == gPlayerCitySelection[playerid]) {
       randSpawn = random(sizeof(gRandomSpawns_SanFierro));
       SetPlayerPos(playerid,
       gRandomSpawns_SanFierro[randSpawn][0],
       gRandomSpawns_SanFierro[randSpawn][1],
       gRandomSpawns_SanFierro[randSpawn][2]);
      SetPlayerFacingAngle(playerid,gRandomSpawns_SanFierro[randSpawn][3]);
   }
   else if(CITY_LAS_VENTURAS == gPlayerCitySelection[playerid]) {
       randSpawn = random(sizeof(gRandomSpawns_LasVenturas));
       SetPlayerPos(playerid,
       gRandomSpawns_LasVenturas[randSpawn][0],
       gRandomSpawns_LasVenturas[randSpawn][1],
       gRandomSpawns_LasVenturas[randSpawn][2]);
      SetPlayerFacingAngle(playerid,gRandomSpawns_LasVenturas[randSpawn][3]);
   }

   //SetPlayerColor(playerid,COLOR_NORMAL_PLAYER);
   
   SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL,200);
    SetPlayerSkillLevel(playerid,WEAPONSKILL_PISTOL_SILENCED,200);
    SetPlayerSkillLevel(playerid,WEAPONSKILL_DESERT_EAGLE,200);
    SetPlayerSkillLevel(playerid,WEAPONSKILL_SHOTGUN,200);
    SetPlayerSkillLevel(playerid,WEAPONSKILL_SAWNOFF_SHOTGUN,200);
    SetPlayerSkillLevel(playerid,WEAPONSKILL_SPAS12_SHOTGUN,200);
    SetPlayerSkillLevel(playerid,WEAPONSKILL_MICRO_UZI,200);
    SetPlayerSkillLevel(playerid,WEAPONSKILL_MP5,200);
    SetPlayerSkillLevel(playerid,WEAPONSKILL_AK47,200);
    SetPlayerSkillLevel(playerid,WEAPONSKILL_M4,200);
    SetPlayerSkillLevel(playerid,WEAPONSKILL_SNIPERRIFLE,200);
   
    GivePlayerWeapon(playerid,WEAPON_COLT45,100);
   //GivePlayerWeapon(playerid,WEAPON_MP5,100);
   //TogglePlayerClock(playerid, 1);

   return 1;
}

//----------------------------------------------------------

public OnPlayerDeath(playerid, killerid, reason)
{
    new playercash;
   
   if(killerid == INVALID_PLAYER_ID) {
        ResetPlayerMoney(playerid);
   } else {
      playercash = GetPlayerMoney(playerid);
      if(playercash > 0)  {
         GivePlayerMoney(killerid, playercash);
         ResetPlayerMoney(playerid);
      }
   }
      return 1;
}

//----------------------------------------------------------

ClassSel_SetupCharSelection(playerid)
{
      if(gPlayerCitySelection[playerid] == CITY_LOS_SANTOS) {
      SetPlayerInterior(playerid,11);
      SetPlayerPos(playerid,508.7362,-87.4335,998.9609);
      SetPlayerFacingAngle(playerid,0.0);
       SetPlayerCameraPos(playerid,508.7362,-83.4335,998.9609);
      SetPlayerCameraLookAt(playerid,508.7362,-87.4335,998.9609);
   }
   else if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO) {
      SetPlayerInterior(playerid,3);
      SetPlayerPos(playerid,-2673.8381,1399.7424,918.3516);
      SetPlayerFacingAngle(playerid,181.0);
       SetPlayerCameraPos(playerid,-2673.2776,1394.3859,918.3516);
      SetPlayerCameraLookAt(playerid,-2673.8381,1399.7424,918.3516);
   }
   else if(gPlayerCitySelection[playerid] == CITY_LAS_VENTURAS) {
      SetPlayerInterior(playerid,3);
      SetPlayerPos(playerid,349.0453,193.2271,1014.1797);
      SetPlayerFacingAngle(playerid,286.25);
       SetPlayerCameraPos(playerid,352.9164,194.5702,1014.1875);
      SetPlayerCameraLookAt(playerid,349.0453,193.2271,1014.1797);
   }
   
}

//----------------------------------------------------------
// Used to init textdraws of city names

ClassSel_InitCityNameText(Text:txtInit)
{
     TextDrawUseBox(txtInit, 0);
   TextDrawLetterSize(txtInit,1.25,3.0);
   TextDrawFont(txtInit, 0);
   TextDrawSetShadow(txtInit,0);
    TextDrawSetOutline(txtInit,1);
    TextDrawColor(txtInit,0xEEEEEEFF);
    TextDrawBackgroundColor(txtClassSelHelper,0x000000FF);
}

//----------------------------------------------------------

ClassSel_InitTextDraws()
{
    // Init our observer helper text display
   txtLosSantos = TextDrawCreate(10.0, 380.0, "Los Santos");
   ClassSel_InitCityNameText(txtLosSantos);
   txtSanFierro = TextDrawCreate(10.0, 380.0, "San Fierro");
   ClassSel_InitCityNameText(txtSanFierro);
   txtLasVenturas = TextDrawCreate(10.0, 380.0, "Las Venturas");
   ClassSel_InitCityNameText(txtLasVenturas);

    // Init our observer helper text display
   txtClassSelHelper = TextDrawCreate(10.0, 415.0,
      " Press ~b~~k~~GO_LEFT~ ~w~or ~b~~k~~GO_RIGHT~ ~w~to switch cities.~n~ Press ~r~~k~~PED_FIREWEAPON~ ~w~to select.");
   TextDrawUseBox(txtClassSelHelper, 1);
   TextDrawBoxColor(txtClassSelHelper,0x222222BB);
   TextDrawLetterSize(txtClassSelHelper,0.3,1.0);
   TextDrawTextSize(txtClassSelHelper,400.0,40.0);
   TextDrawFont(txtClassSelHelper, 2);
   TextDrawSetShadow(txtClassSelHelper,0);
    TextDrawSetOutline(txtClassSelHelper,1);
    TextDrawBackgroundColor(txtClassSelHelper,0x000000FF);
    TextDrawColor(txtClassSelHelper,0xFFFFFFFF);
}

//----------------------------------------------------------

ClassSel_SetupSelectedCity(playerid)
{
   if(gPlayerCitySelection[playerid] == -1) {
      gPlayerCitySelection[playerid] = CITY_LOS_SANTOS;
   }
   
   if(gPlayerCitySelection[playerid] == CITY_LOS_SANTOS) {
      SetPlayerInterior(playerid,0);
         SetPlayerCameraPos(playerid,1630.6136,-2286.0298,110.0);
      SetPlayerCameraLookAt(playerid,1887.6034,-1682.1442,47.6167);
      
      TextDrawShowForPlayer(playerid,txtLosSantos);
      TextDrawHideForPlayer(playerid,txtSanFierro);
      TextDrawHideForPlayer(playerid,txtLasVenturas);
   }
   else if(gPlayerCitySelection[playerid] == CITY_SAN_FIERRO) {
      SetPlayerInterior(playerid,0);
         SetPlayerCameraPos(playerid,-1300.8754,68.0546,129.4823);
      SetPlayerCameraLookAt(playerid,-1817.9412,769.3878,132.6589);
      
      TextDrawHideForPlayer(playerid,txtLosSantos);
      TextDrawShowForPlayer(playerid,txtSanFierro);
      TextDrawHideForPlayer(playerid,txtLasVenturas);
   }
   else if(gPlayerCitySelection[playerid] == CITY_LAS_VENTURAS) {
      SetPlayerInterior(playerid,0);
         SetPlayerCameraPos(playerid,1310.6155,1675.9182,110.7390);
      SetPlayerCameraLookAt(playerid,2285.2944,1919.3756,68.2275);
      
      TextDrawHideForPlayer(playerid,txtLosSantos);
      TextDrawHideForPlayer(playerid,txtSanFierro);
      TextDrawShowForPlayer(playerid,txtLasVenturas);
   }
}

//----------------------------------------------------------

ClassSel_SwitchToNextCity(playerid)
{
    gPlayerCitySelection[playerid]++;
   if(gPlayerCitySelection[playerid] > CITY_LAS_VENTURAS) {
       gPlayerCitySelection[playerid] = CITY_LOS_SANTOS;
   }
   PlayerPlaySound(playerid,1052,0.0,0.0,0.0);
   gPlayerLastCitySelectionTick[playerid] = GetTickCount();
   ClassSel_SetupSelectedCity(playerid);
}

//----------------------------------------------------------

ClassSel_SwitchToPreviousCity(playerid)
{
    gPlayerCitySelection[playerid]--;
   if(gPlayerCitySelection[playerid] < CITY_LOS_SANTOS) {
       gPlayerCitySelection[playerid] = CITY_LAS_VENTURAS;
   }
   PlayerPlaySound(playerid,1053,0.0,0.0,0.0);
   gPlayerLastCitySelectionTick[playerid] = GetTickCount();
   ClassSel_SetupSelectedCity(playerid);
}

//----------------------------------------------------------

ClassSel_HandleCitySelection(playerid)
{
   new Keys,ud,lr;
    GetPlayerKeys(playerid,Keys,ud,lr);
   
    if(gPlayerCitySelection[playerid] == -1) {
      ClassSel_SwitchToNextCity(playerid);
      return;
   }

   // only allow new selection every ~500 ms
   if( (GetTickCount() - gPlayerLastCitySelectionTick[playerid]) < 500 ) return;
   
   if(Keys & KEY_FIRE) {
       gPlayerHasCitySelected[playerid] = 1;
       TextDrawHideForPlayer(playerid,txtClassSelHelper);
      TextDrawHideForPlayer(playerid,txtLosSantos);
      TextDrawHideForPlayer(playerid,txtSanFierro);
      TextDrawHideForPlayer(playerid,txtLasVenturas);
       TogglePlayerSpectating(playerid,0);
       return;
   }
   
   if(lr > 0) {
      ClassSel_SwitchToNextCity(playerid);
   }
   else if(lr < 0) {
      ClassSel_SwitchToPreviousCity(playerid);
   }
}

//----------------------------------------------------------

public OnPlayerRequestClass(playerid, classid)
{
   if(IsPlayerNPC(playerid)) return 1;

   if(gPlayerHasCitySelected[playerid]) {
      ClassSel_SetupCharSelection(playerid);
      return 1;
   } else {
      if(GetPlayerState(playerid) != PLAYER_STATE_SPECTATING) {
         TogglePlayerSpectating(playerid,1);
          TextDrawShowForPlayer(playerid, txtClassSelHelper);
          gPlayerCitySelection[playerid] = -1;
      }
     }
   
   return 0;
}

//----------------------------------------------------------

public OnGameModeInit()
{
   SetGameModeText("DM Srbija");
   ShowPlayerMarkers(PLAYER_MARKERS_MODE_GLOBAL);
   ShowNameTags(1);
   SetNameTagDrawDistance(40.0);
   EnableStuntBonusForAll(0);
   DisableInteriorEnterExits();
   SetWeather(2);
   
   //LimitGlobalChatRadius(300.0);
   
   ClassSel_InitTextDraws();

   // Player Class
   AddPlayerClass(1,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(2,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(269,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(270,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(271,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(272,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(47,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(48,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(49,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(50,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(51,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(52,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(53,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(54,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(55,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(56,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(57,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(58,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
      AddPlayerClass(68,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(69,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(70,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(71,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(72,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(73,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(75,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(76,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(78,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(79,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(80,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(81,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(82,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(83,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(84,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(85,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(87,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(88,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(89,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(91,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(92,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(93,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(95,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(96,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(97,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(98,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
   AddPlayerClass(99,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);

   // SPECIAL
   total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/trains.txt");
   total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/pilots.txt");

      // LAS VENTURAS
     total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_law.txt");
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_airport.txt");
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/lv_gen.txt");
   
    // SAN FIERRO
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_law.txt");
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_airport.txt");
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/sf_gen.txt");
   
    // LOS SANTOS
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_law.txt");
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_airport.txt");
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_inner.txt");
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/ls_gen_outer.txt");
   
    // OTHER AREAS
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/whetstone.txt");
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/bone.txt");
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/flint.txt");
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/tierra.txt");
    total_vehicles_from_files += LoadStaticVehiclesFromFile("vehicles/red_county.txt");

    printf("Total vehicles from files: %d",total_vehicles_from_files);

   return 1;
}

//----------------------------------------------------------

public OnPlayerUpdate(playerid)
{
   if(!IsPlayerConnected(playerid)) return 0;
   
   // changing cities by inputs
   if( !gPlayerHasCitySelected[playerid] &&
       GetPlayerState(playerid) == PLAYER_STATE_SPECTATING ) {
       ClassSel_HandleCitySelection(playerid);
       return 1;
   }
   
   // No weapons in interiors
   if(GetPlayerInterior(playerid) != 0 && GetPlayerWeapon(playerid) != 0) {
       SetPlayerArmedWeapon(playerid,0); // fists
       return 0; // no syncing until they change their weapon
   }
   
   // Don't allow minigun
   if(GetPlayerWeapon(playerid) == WEAPON_MINIGUN) {
       Kick(playerid);
       return 0;
   }
   
   // No jetpacks allowed
   if(GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_USEJETPACK) {
       Kick(playerid);
       return 0;
   }

   return 1;
}

//------------------

Nesto je bilo nesto sam ja uradio.
I sad imam 3 pitanja:
1)Kako da ubacim spawn pojint jedan i stalni?
2)Napravio sam mapu u MTA i sad neki su mi rekli da je konverkt ovde http://convertffs.com/objects/  i uradio sam ali posle gde da je ubacim i kako?
3)Kako da stavim na vrata sifre i da to radi???
To je to...
Molim vas pomozite.

[CH]grudvo


imas tutove za sva ta tvoja pitanja tu pa proucii ih malo





Ako ti jehitno onda nista neces postic, imas tutoriale sve ljepo pregledaj pa onda ako nesto ne kuzis postaj, necemo ti mi raditi sve, ovaj forum sluzi za OBRAZOVANJE NOVIH SCRIPTERA, a ne za pravljenje gotovih radova...

Correlli

Proćitaj pravila (opet, da) i koristi [ code ] [ / code ] format.