16:49
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
Модератор форума: Dima-kun  
Добавление ЛВЛов
Ghost-XДата: Вторник, 25.11.2008, 17:05 | Сообщение # 31
Мастер джэдай
Группа: Продвинутые
Сообщений: 3548
Награды: 36
Город: Наб. Челны
Репутация: 856
Замечания: 40%
Статус:
Quote (odyvan)
у мну получилосЬ)))я сделал 250 уровней для игроков и 251 для админа))))спс вам парни))))

смотри как бы серв не лагал crazy я сделал было 101 лвл у мя птом такие лаги были...



Спор на форуме, все равно что олимпиада среди умственно отсталых: даже если ты победил, ты все равно гермофродит.
Хочешь остаться при своем мнении - держи его при себе.
SparzMcДата: Вторник, 25.11.2008, 17:13 | Сообщение # 32
Постоялец
Группа: Пользователи
Сообщений: 394
Награды: 10
Город: 000ds
Репутация: 20
Замечания: 60%
Статус:
Не у меня все ок ,я в =разделе сервера сделал тему там про мой серв)
Ghost-XДата: Вторник, 25.11.2008, 18:08 | Сообщение # 33
Мастер джэдай
Группа: Продвинутые
Сообщений: 3548
Награды: 36
Город: Наб. Челны
Репутация: 856
Замечания: 40%
Статус:
Quote (DarkStep_eXtreme)
Не у меня все ок ,я в =разделе сервера сделал тему там про мой серв)

ну знач у тя не такой мудежный мод как у мну)))



Спор на форуме, все равно что олимпиада среди умственно отсталых: даже если ты победил, ты все равно гермофродит.
Хочешь остаться при своем мнении - держи его при себе.
[TMP]oDyBaHДата: Четверг, 27.11.2008, 13:54 | Сообщение # 34
Местный
Группа: Продвинутые
Сообщений: 667
Награды: 13
Город: Пенза
Репутация: -3
Замечания: 80%
Статус:
у мну нету лагов))все норм рабит!вот тока как название мода поминять???ну тип gto 10.0)))


Заказать бесплатно Графику
< < < < < ЖМИ
MiniDM 1 100% Скачать
Persey_Дата: Четверг, 27.11.2008, 17:41 | Сообщение # 35
Местный
Группа: I'm V.I.P.
Сообщений: 850
Награды: 35
Город: New-York City
Репутация: 635
Замечания: 0%
Статус:
//v0.6.0
#define MAX_SWEARS 100 - Найди вот эту строку в своём моде гто.Над этой строкой написана версия мода.Там и вписываи какую хочеш версию.

Если помог ставь +

Добавлено (27.11.2008, 17:41)
---------------------------------------------
Ещё кое-что:
зайди в папку pawno, далее открой папку include и открой там base.inc. Там найди такую строку #define VERSION "v0.6.0"
и там тож впиши версию мода

Ghost-XДата: Четверг, 27.11.2008, 17:49 | Сообщение # 36
Мастер джэдай
Группа: Продвинутые
Сообщений: 3548
Награды: 36
Город: Наб. Челны
Репутация: 856
Замечания: 40%
Статус:
смотря где ты имеешь в виду, если чтоб в окне серва показывал то в пвн коде поищи в public OnGameModeInit


Спор на форуме, все равно что олимпиада среди умственно отсталых: даже если ты победил, ты все равно гермофродит.
Хочешь остаться при своем мнении - держи его при себе.
Persey_Дата: Четверг, 27.11.2008, 23:02 | Сообщение # 37
Местный
Группа: I'm V.I.P.
Сообщений: 850
Награды: 35
Город: New-York City
Репутация: 635
Замечания: 0%
Статус:
Ну я написал вродь всё правильно. Делая что я написал всё норм будет.Я прост написал подробно что и где
SparzMcДата: Пятница, 28.11.2008, 05:00 | Сообщение # 38
Постоялец
Группа: Пользователи
Сообщений: 394
Награды: 10
Город: 000ds
Репутация: 20
Замечания: 60%
Статус:
Quote (GhostTT)
ну знач у тя не такой мудежный мод как у мну)))

Ага ,наверно,щяс занят гф wall ,доделаю одну прибулуду и модом гто буду заниматься

P.S сделайте меня куратором этой темы:)

Ghost-XДата: Пятница, 28.11.2008, 09:16 | Сообщение # 39
Мастер джэдай
Группа: Продвинутые
Сообщений: 3548
Награды: 36
Город: Наб. Челны
Репутация: 856
Замечания: 40%
Статус:
Quote (DarkStep_eXtreme)
Ага ,наверно,щяс занят гф wall ,доделаю одну прибулуду и модом гто буду заниматься

у меня ГТО код ппц мудежный crazy



Спор на форуме, все равно что олимпиада среди умственно отсталых: даже если ты победил, ты все равно гермофродит.
Хочешь остаться при своем мнении - держи его при себе.
[TMP]oDyBaHДата: Четверг, 25.12.2008, 00:18 | Сообщение # 40
Местный
Группа: Продвинутые
Сообщений: 667
Награды: 13
Город: Пенза
Репутация: -3
Замечания: 80%
Статус:
незаметил етот баг!почему у игрока допустим 1лвл он докачался до 2 но ему даеца не втарой а сразу 20 bad bad bad как так?как сделать чтоб все попорядку шло?и где можно установить доступные орудия для каждого лвл?


Заказать бесплатно Графику
< < < < < ЖМИ
MiniDM 1 100% Скачать
Ghost-XДата: Четверг, 25.12.2008, 00:20 | Сообщение # 41
Мастер джэдай
Группа: Продвинутые
Сообщений: 3548
Награды: 36
Город: Наб. Челны
Репутация: 856
Замечания: 40%
Статус:
Quote (Jay-izi)
Я думаю что можно хоть 100 лвл сделать.
изменяешь в #define MAX_LEVEL 50

и далее просто добовляешь строчки такие же как наверзу вместе с експой.
я думаю работать будет.


сделать как нефиг делать lol за 5 сек сделаю спокойно wink



Спор на форуме, все равно что олимпиада среди умственно отсталых: даже если ты победил, ты все равно гермофродит.
Хочешь остаться при своем мнении - держи его при себе.
Persey_Дата: Четверг, 25.12.2008, 00:22 | Сообщение # 42
Местный
Группа: I'm V.I.P.
Сообщений: 850
Награды: 35
Город: New-York City
Репутация: 635
Замечания: 0%
Статус:
odyvan - эт ты что-то намудрил с лвлами...
А с оружием вся инфа в папке: заходишь в папку pawno,далее include и там есть инклуд weapons
Вот смотри где нада изменять:
[pwn]//
// Created: 05.09.06
// Aurthor: Iain Gilbert
//

#if defined _weapons_included
#endinput
#endif

#define _weapons_included
#pragma library weapons
#include "base"

forward AmmunationInit();
forward IsPlayerAtAmmunation(playerid);
forward OnPlayerEnterAmmoCheckpoint(playerid);
forward IsPlayerAllowedWeapon(playerid,weaponid);
forward BuyWeapon(playerid,weaponid,bullets);
forward AmmunationCommandHandler(playerid,text[]);

#define MAX_WEAPONS 50
#define MAX_BULLETS 999

enum WeaponInfo {
Weapon_ID, // id number of weapon
Weapon_Name[MAX_NAME], // weapon name
Weapon_Allowed, // is weapon allowed
Weapon_MaxBullets, // max bullets
Weapon_Cost, // cost per bullet
Weapon_Level // player level required to buy this weapon
}
#define WeaponsSize 47
new Weapons[WeaponsSize][WeaponInfo] = {

//id, "Name" ,Allowed,bullets, cost , level
{0, "Невооружен" , 0 , 1 , 0 , 0},

{1, "Кастет" , 0 , 1 , 6000 , 3},
{2, "Клюшка для гольфа" , 1 , 1 , 6000 , 2},
{3, "Night Stick" , 0 , 1 , 10000 , 18},
{4, "Нож" , 1 , 1 , 10000 , 4},
{5, "Бейсбольная Бита" , 1 , 1 , 15000 , 7},
{6, "Shovel" , 0 , 1 , 1000 , 0},
{7, "Кий" , 1 , 1 , 1000 , 11},
{8, "Меч Катана" , 1 , 1 , 20000 , 8},
{9, "Бензопила" , 1 , 1 , 7500 , 6},
{10, "Пурпурный Dildo" , 0 , 1 , 5000 , 9},
{11, "Вибратор" , 0 , 1 , 5000 , 5},
{12, "Длинный Белый Dildo" , 0 , 1 , 7000 , 15},
{13, "Вибратор 2" , 0 , 1 , 5000 , 11},
{14, "Букет Цветов" , 0 , 1 , 1000 , 22},
{15, "Трость" , 1 , 1 , 1000 , 8},
{16, "Граната" , 1 , 1 , 7500 , 16},
{17, "Газовый Баллон" , 0 , 1 , 20000 , 25},
{18, "Коктейль Молотова" , 1 , 1 , 30000 , 20},

{19, "Неизвестное" , 0 , 1 , 1000 , 25},
{20, "Неизвестное" , 0 , 1 , 1000 , 25},
{21, "Неизвестное" , 0 , 1 , 1000 , 25},

{22, "Пистолет" , 1 , 999 , 125 , 0},
{23, "Пистолет с глушителем" , 1 , 999 , 125 , 10},
{24, "Пустынный Орел" , 1 , 999 , 1200 , 12},
{25, "Дробовик" , 1 , 999 , 1100 , 5},
{26, "Разрывной Дробовик" , 1 , 999 , 2300 , 14},
{27, "Боевой Дробовик" , 1 , 999 , 3750 , 15},
{28, "Микро УЗИ (ПолуАвтомат)" , 1 , 999 , 2100 , 13},
{29, "МП5(НК5) (ПолуАвтомат)" , 1 , 999 , 2200 , 18},
{30, "АК47 (Автомат Калашникова)" , 1 , 999 , 1500 , 17},
{31, "M4 (Автомат)" , 1 , 999 , 4300 , 19},
{32, "Tec9 (ПолуАвтомат)" , 1 , 999 , 4150 , 7},
{33, "Винтовка" , 1 , 999 , 11500 , 20},
{34, "Снайперская Винтовка" , 1 , 1 , 31000 , 21},
{35, "Гранатомет РПГ" , 1 , 50 , 99000 , 25},
{36, "Реактивная Пусковая установка" , 1 , 50 , 99000 , 25},
{37, "Огнемет" , 1 , 999 , 1000 , 24},
{38, "Ручной Пулемет (Миниган)" , 0 , 999 , 5000 , 25},

{39, "Заряженный Рюкзак" , 0 , 9 , 10000 , 25},
{40, "Детонатор к Рюкзаку" , 0 , 1 , 100 , 25},

{41, "Баллончик с краской" , 1 , 1 , 4000 , 23},
{42, "Огнетушитель" , 1 , 999 , 1000 , 5},
{43, "Фотокамера" , 0 , 1 , 6000 , 24},
{44, "Очки ночного видения", 0 , 1 , 1000 , 0},
{45, "Тепловые Очки" , 0 , 1 , 1000 , 0},
{46, "Парашут" , 0 , 1 , 70000 , 24}

};

#define AmmunationsCount 3
new Ammunations[AmmunationsCount][CoordInfo] = {
{291.0004,-84.5168,1001.5156}, // LVammunation1
{293.2710,-108.9645,1001.5156}, // LSAmmunation1
{290.3177,-38.7184,1001.5156} // LSAmmunation2
};

new WeaponDB[MAX_STRING] = "GTO/Weapon/";

WeaponLoadAll()
{
if (ForceOverwrite) return;
new temp[MAX_STRING];
if (!dini_Exists(ConfigDB)) dini_Create(ConfigDB);
set(temp,dini_Get(ConfigDB,"Weapon_DB"));
if (strlen(temp) > 0) set(WeaponDB,temp);

if (!dini_Exists(WeaponDB))
{

WeaponSaveAll();

return;
}
for (new i=0;i<WeaponsSize;i++)
{
new weapondbname[MAX_STRING];
format(weapondbname,sizeof(weapondbname),"%sGTO.Weapon.%s.txt",WeaponDB,Weapons[i][Weapon_Name]);
set(temp,dini_Get(weapondbname,"Name"));
if (strlen(temp) > 0) set(Weapons[i][Weapon_Name],temp);
set(temp,nullstr);
set(temp,dini_Get(weapondbname,"IsAllowed"));
if (strlen(temp) > 0) Weapons[i][Weapon_Allowed] = strval(temp);
set(temp,nullstr);
set(temp,dini_Get(weapondbname,"Level"));
if (strlen(temp) > 0) Weapons[i][Weapon_Level] = strval(temp);
set(temp,nullstr);
set(temp,dini_Get(weapondbname,"Price"));
if (strlen(temp) > 0) Weapons[i][Weapon_Cost] = strval(temp);
set(temp,nullstr);
}
return;
}

WeaponSaveAll()
{

new temp[MAX_STRING];
if (dini_Exists(ConfigDB))
{
dini_Set(ConfigDB,"Weapon_DB",WeaponDB);
}

for (new i=0;i<WeaponsSize;i++)
{
new weapondbname[MAX_STRING];
format(weapondbname,sizeof(weapondbname),"%sGTO.Weapon.%s.txt",WeaponDB,Weapons[i][Weapon_Name]);
if (!dini_Exists(weapondbname)) dini_Create(weapondbname);
dini_Set(weapondbname,"Name",Weapons[i][Weapon_Name]);
valstr(temp,Weapons[i][Weapon_Allowed]);
dini_Set(weapondbname,"IsAllowed",temp);
set(temp,nullstr);
valstr(temp,Weapons[i][Weapon_Level]);
dini_Set(weapondbname,"Level",temp);
set(temp,nullstr);
valstr(temp,Weapons[i][Weapon_Cost]);
dini_Set(weapondbname,"Price",temp);
set(temp,nullstr);
}
return;
}

public AmmunationInit()
{
for (new id=0;id<AmmunationsCount;id++)
{
AddActiveCheckpoint(Ammunations[id][Coord_X],Ammunations[id][Coord_Y],Ammunations[id][Coord_Z],20,2);
}
WriteLog("Ammunition checkpoints initialised");
}

public IsPlayerAtAmmunation(playerid)
{
for (new id=0;id<AmmunationsCount;id++)
{
if (oIsPlayerInCheckpoint(playerid,Ammunations[id][Coord_X],Ammunations[id][Coord_Y],Ammunations[id][Coord_Z],10))
{
return 1;
}
}
return 0;
}

public OnPlayerEnterAmmoCheckpoint(playerid)
{
if (playerid == INVALID_PLAYER_ID) return;
if (!IsPlayerConnected(playerid)) return;
if (!IsPlayerAtAmmunation(playerid)) return;
SendPlayerFormattedText(playerid, lang_texts[16][1] , 0,COLOUR_GREEN);
SendPlayerFormattedText(playerid, lang_texts[16][2] , 0,COLOUR_GREEN);
SendPlayerFormattedText(playerid, lang_texts[16][3] , 0,COLOUR_GREEN);
SendPlayerFormattedText(playerid, lang_texts[16][4] , 0,COLOUR_GREEN);

}

oGetWeaponName(weaponid)
{
new name[MAX_NAME];
new lookupid=GetWeaponLookupID(weaponid);
if (lookupid == -1) return name;
set(name,Weapons[lookupid][Weapon_Name]);
return name;
}

GetWeaponMaxAmmo(weaponid)
{
new ammo;
new lookupid=GetWeaponLookupID(weaponid);
if (lookupid == -1) return ammo;
ammo = Weapons[lookupid][Weapon_MaxBullets];
return ammo;
}

public IsPlayerAllowedWeapon(playerid,weaponid)
{
new lookupid=GetWeaponLookupID(weaponid);
if (lookupid == -1) return 0;
if (Weapons[lookupid][Weapon_Allowed] == 0) return 0;
if (Weapons[lookupid][Weapon_Level] > GetPlayerLevel(playerid)) return 0;
return 1;
}

IsWeaponHandToHand(weaponid)
{
new weaponlookupid=GetWeaponLookupID(weaponid);
if (weaponlookupid == -1) return 0;
if (Weapons[weaponlookupid][Weapon_MaxBullets] == 1) return 1;
return 0;
}

GetWeaponCost(weaponid)
{
new weaponlookupid=GetWeaponLookupID(weaponid);
if (weaponlookupid == -1) return 0;
return Weapons[weaponlookupid][Weapon_Cost];
}

GetWeaponLookupID(weaponid)
{
new lookupid=-1;
for (new i=0;i<WeaponsSize;i++)
{
if (weaponid == Weapons[i][Weapon_ID])
{
lookupid = i;
}
}
return lookupid;
}

IsWeapon(weaponid)
{
if ((weaponid >= 0) && (weaponid <= 46)) return 1;
return 0;
}

IsStoreWeapon(weaponid)
{

if ((weaponid >= 22) && (weaponid <=32)) return 1;
return 0;
/*
22 Pistol,
23 Silenced Pistol,
24 Desert Eagle,
25 Shotgun,
26 Sawn Off Shotgun,
27 Combat Shotgun,
28 Micro Uzi (Mac 10),
29 MP5,
30 AK47,
31 M4,
32 Tec9,
*/
}

SendPlayerVendorWeapons(playerid)
{
new string[MAX_STRING];
SendPlayerFormattedText(playerid, lang_texts[16][5] , 0,COLOUR_GREEN);
for (new weaponid=1;weaponid<MAX_WEAPONS;weaponid++)
{
if (IsPlayerAllowedWeapon(playerid,weaponid))
{
format(string,sizeof(string), lang_texts[16][6] ,oGetWeaponName(weaponid),GetWeaponCost(weaponid),weaponid);
SendPlayerScrollingText(playerid, string);
}
}
}

public BuyWeapon(playerid,weaponid,bullets)
{
new string[MAX_STRING];
if ((weaponid < 1) || (weaponid > 45))
{
SendPlayerFormattedText(playerid, lang_texts[16][7] , 0,COLOUR_RED);
return 0;
}
if ((bullets < 1) || (bullets > 999))
{
SendPlayerFormattedText(playerid, lang_texts[16][8] , 0,COLOUR_RED);
return 0;
}
if (!IsPlayerAtAmmunation(playerid))
{
SendPlayerFormattedText(playerid, lang_texts[16][9] , 0,COLOUR_RED);
return 0;
}

if (!IsPlayerAllowedWeapon(playerid,weaponid))
{
format(string,sizeof(string), lang_texts[16][10] ,oGetWeaponName(weaponid));
SendPlayerFormattedText(playerid,string,0,COLOUR_RED);
return 0;
}
new purchasecost;
purchasecost = GetWeaponCost(weaponid) * bullets;
if (purchasecost < 1)
{
format(string,sizeof(string), lang_texts[16][11] ,oGetWeaponName(weaponid));
SendPlayerFormattedText(playerid, string,0,COLOUR_RED);
return 0;
}
if (oGetPlayerMoney(playerid) < purchasecost)
{
format(string,sizeof(string), lang_texts[16][12] , purchasecost);
SendPlayerFormattedText(playerid, string,0,COLOUR_RED);
return 0;
}

oGivePlayerMoney(playerid,0-purchasecost,1);
oGivePlayerWeapon(playerid,weaponid,bullets);
if (bullets > 1)
{
format(string,sizeof(string), lang_texts[16][13] ,bullets,oGetWeaponName(weaponid),purchasecost);
}
else
{
format(string,sizeof(string), lang_texts[16][14] ,oGetWeaponName(weaponid),purchasecost);
}
SendPlayerFormattedText(playerid, string, 0,COLOUR_GREEN);
SendPlayerFormattedText(playerid, lang_texts[16][15] , 0,COLOUR_GREEN);
return 1;
}

public AmmunationCommandHandler(playerid,text[]) // process player commands
{
if (!IsPlayerRegistered(playerid))
{
return 0; // non registered players dont use weapon commands
}

new cmd[20];
new idx;

set(cmd,strcharsplit(text, idx,strchar(" ")));
if (strlen(cmd) == 0) return 0;

if(strcomp(cmd, "/weapons", true) == 1)
{

SendPlayerOwnedWeapons(playerid);
return 1;
}

if((strcomp(cmd, "/wl", true) == 1) || (strcomp(cmd, "/weaponlist", true) == 1))
{
if (!IsPlayerAtAmmunation(playerid))
{
SendPlayerFormattedText(playerid, lang_texts[16][16] , 0,COLOUR_RED);
return 1;
}
SendPlayerVendorWeapons(playerid);
return 1;
}

if((strcomp(cmd, "/wb", true) == 1) || (strcomp(cmd, "/weaponbuy", true) == 1))
{
if (!IsPlayerAtAmmunation(playerid))
{
SendPlayerFormattedText(playerid, lang_texts[16][17] , 0,COLOUR_RED);
return 1;
}

// get weaponid
new weaponid;
set(cmd,strcharsplit(text, idx,strchar(" ")));
if (strlen(cmd) == 0)
{
SendPlayerVendorWeapons(playerid);
//SendPlayerFormattedText(playerid, lang_texts[16][18] , 0,COLOUR_RED);
return 1;
}
weaponid = strval(cmd);
if (weaponid <= 0)
{
SendPlayerFormattedText(playerid, lang_texts[16][19] , 0,COLOUR_RED);
return 1;
}

// get bullets
new bullets;
set(cmd,strcharsplit(text, idx,strchar(" ")));
if (strlen(cmd) == 0)
{
bullets=1;
}
else
{
bullets = strval(cmd);
}
if (bullets < 0)
{
SendPlayerFormattedText(playerid, lang_texts[16][20] , 0,COLOUR_RED);
return 1;
}
BuyWeapon(playerid,weaponid,bullets);
return 1;
}

if(strcomp(cmd, "/weapon", true) == 1)
{
set(cmd,strcharsplit(text, idx,strchar(" ")));

if(strcomp(cmd, "help", true) == 1)
{
SendPlayerFormattedText(playerid, lang_texts[16][21] , 0,COLOUR_RED);
return 1;
}

if (strcomp(cmd, "list", true) == 1)
{
if (!IsPlayerAtAmmunation(playerid))
{
SendPlayerFormattedText(playerid, lang_texts[16][22] , 0,COLOUR_RED);
return 1;
}
SendPlayerVendorWeapons(playerid);
return 1;
}

if(strcomp(cmd, "buy", true) == 1)
{
if (!IsPlayerAtAmmunation(playerid))
{
SendPlayerFormattedText(playerid, lang_texts[16][23] , 0,COLOUR_RED);
return 1;
}

// get weaponid
new weaponid;
set(cmd,strcharsplit(text, idx,strchar(" ")));
if (strlen(cmd) == 0)
{
SendPlayerVendorWeapons(playerid);
//SendPlayerFormattedText(playerid, lang_texts[16][24] , 0,COLOUR_RED);
return 1;
}
weaponid = strval(cmd);
if (weaponid <= 0)
{
SendPlayerFormattedText(playerid, lang_texts[16][25] , 0,COLOUR_RED);
return 1;
}

// get bullets
new bullets;
set(cmd,strcharsplit(text, idx,strchar(" ")));
if (strlen(cmd) == 0)
{
bullets=1;
}
else
{
bullets = strval(cmd);
}
if (bullets < 0)
{
SendPlayerFormattedText(playerid, lang_texts[16][26] , 0,COLOUR_RED);
return 1;
}
BuyWeapon(playerid,weaponid,bullets);
return 1;
}
}
return 0;
}

[/pwn]

Ну вот и всё :)


Сообщение отредактировал Lary_ - Четверг, 25.12.2008, 00:27
[TMP]oDyBaHДата: Четверг, 25.12.2008, 00:26 | Сообщение # 43
Местный
Группа: Продвинутые
Сообщений: 667
Награды: 13
Город: Пенза
Репутация: -3
Замечания: 80%
Статус:
GhostTT, тыб лучше мне помог бы bad

Добавлено (25.12.2008, 00:25)
---------------------------------------------
Lary_, давай щас залью base.inc или просто код опубликую тут!

Добавлено (25.12.2008, 00:25)
---------------------------------------------
[pwn]//
// Created: 05.09.06
// Aurthor: Iain Gilbert
//

#if defined _base_included
#endinput
#endif

#define _base_included
#pragma library base

#include <a_samp>
#include <core>
#include <float>
#include "utils\dini"

#define VERSION "v0.6.0"

#define debug 0

#define MAX_STRING 255
#define MAX_NAME 40 // number of char's a name/password/misc_word can be
#define INACTIVE_PLAYER_ID 255
#define INVALID_QUEST_ID 0
#define MAX_QUESTS 255
#define MAX_WIN 900000 // Maximum gambling win
#define MAX_SPAWNPOINTS 50
#define MAX_COUNTDOWN 5
#define MAX_PING 500

#define TimerTick 1000 // used for how often timer function is called

#define COLOUR_GREY 0xAFAFAFAA // grey
#define COLOUR_GREEN 0x33AA33AA // green
#define COLOUR_LIGHTGREEN 0x9ACD32AA //lightgreen
#define COLOUR_RED 0xAA3333AA // red
#define COLOUR_LIGHTRED 0xFF6347AA // lightred
#define COLOUR_YELLOW 0xFFFF00AA // yellow
#define COLOUR_WHITE 0xFFFFFFAA // white
#define COLOUR_BLUE 0x33AAFFAA // blue
#define COLOUR_LIGHTBLUE 0x33CCFFAA // LightBlue
#define COLOUR_ORANGE 0xFF9900AA //orange
#define COLOUR_PURPLE 0xC2A2DAAA //purple

#define COLOUR_CRIMSON 0xDC143CAA
#define COLOUR_LIMEGREEN 0x32CD32AA
#define COLOUR_AQUA 0x00FFFFAA
#define COLOUR_FLBLUE 0x6495EDAA
#define COLOUR_MAGENTA 0xFF00FFFF
#define COLOUR_GOLD 0xB8860BAA
#define COLOUR_PINK 0xFFC0CBAA

// TODO: more colours
#define COLOUR_MISC 0xAFAFAFAA // Grey - Misc
#define COLOUR_CHAT 0xFFFFFFAA // White - Chat
#define COLOUR_PLAYER 0xAAAAAAAA // White - Player
#define COLOUR_XP_GOOD 0x00C7FFAA // Blue - XP
#define COLOUR_XP_BAD 0x00008BAA // Blue - XP
#define COLOUR_COMBAT_GOOD 0xAA3333AA // Red - Combat
#define COLOUR_COMBAT_BAD 0xBB3333AA // Red - Combat
#define COLOUR_MONEY_GOOD 0xFFFF00AA // Yellow - Money
#define COLOUR_MONEY_BAD 0xDAA520AA // Yellow - Money
#define COLOUR_RACE 0x005407AA // green - dark
#define COLOUR_RACE_BAD 0x545407AA // yellow-green-dark
#define COLOUR_GANG 0xFF8C00AA // orange
#define COLOUR_GANG_CHAT 0xFFA500AA // orange
#define COLOUR_DM 0xFF0066AA // red - purple
#define COLOUR_DM_BAD 0xFF0066AA // red - purple

#define MIN_HEALTH 50
#define MAX_HEALTH 100
#define NUMVALUES 4

#define SOUND_MUSIC_CLASSSELECT 1185
#define SOUND_MUSIC_RACEFINISH 1183
#define SOUND_MUSIC_RACERECORD 1097
#define SOUND_MUSIC_MISSIONCOMPLETE 1185
#define SOUND_OFF 1184
#define SOUND_BLIP1 1056
#define SOUND_BLIP2 1057
#define SOUND_EXPLOSION 1159
#define SOUND_PURCHASE 1149
#define SOUND_CHECKPOINT 1058
#define SOUND_DEATH 1057
#define SOUND_DMKILL 1056
#define SOUND_DMDEATH 1057

#define OUTPUTLEVEL 0 // Amount of imformation outputted to console
// 0 - off, no output
// 1 - + Minimal output
// 2 - + DB saves, etc
// 3 - + XP/Level/Money changes output

#define DBTYPE 0 // Database type (olny flat file ATM)
// 0 - dini - flat file
// 1 - TODO: SQL

new ConfigDB[MAX_STRING] = "GTO/Config/GTO.Config.Base.txt";
new LevelDB[MAX_STRING] = "GTO/Config/GTO.Config.Levels.txt";
new VerboseSave=-1; // do we save extra un-needed db info like weapons, races, vehicels, deathmatches, etc
new RealTime=0;
new ForceOverwrite = 0;

// xyz coord info
enum CoordInfo {
Float:Coord_X,
Float:Coord_Y,
Float:Coord_Z
}

new KickList[MAX_PLAYERS];
new WorldTime;
new DBSeperator= 124; // seperate db fields.atm for db writing im just sending a string, which is written to a file.
new nullstr[MAX_STRING];

enum LevelInfo {
level_xp,
level_name[MAX_NAME]
}

#define MAX_LEVEL 101
#define MAX_XP 1500000000
#define MAX_LVLXP 1500000000

// level rank names by Baby Face / Cool
new LevelList[MAX_LEVEL+1][LevelInfo] = { // experience required for each level
{ 0, "lvl 0" },
{ 5000, "lvl 1" },
{ 10000, "lvl 2" },
{ 15000, "lvl 3" },
{ 20000, "lvl 4" },
{ 25000, "lvl 5" },
{ 30000, "lvl 6" },
{ 35000, "lvl 7" },
{ 40000, "lvl 8" },
{ 45000, "lvl 9" },
{ 50000, "lvl 10" },
{ 60000, "lvl 11" },
{ 70000, "lvl 12" },
{ 80000, "lvl 13" },
{ 90000, "lvl 14" },
{ 100000, "lvl 15" },
{ 110000, "lvl 16" },
{ 120000, "lvl 17" },
{ 130000, "lvl 18" },
{ 140000, "lvl 19" },
{ 150000, "lvl 20" },
{ 200000, "lvl 21" },
{ 250000, "lvl 22" },
{ 300000, "lvl 23" },
{ 400000, "lvl 24" },
{ 500000, "lvl 25" },
{ 600000, "lvl 26" },
{ 700000, "lvl 27" },
{ 800000, "lvl 28" },
{ 900000, "lvl 29" },
{ 1000000, "lvl 30" },
{ 1500000, "lvl 31" },
{ 2000000, "lvl 32" },
{ 2500000, "lvl 33" },
{ 3000000, "lvl 34" },
{ 3500000, "lvl 35" },
{ 4000000, "lvl 36" },
{ 4500000, "lvl 37" },
{ 5000000, "lvl 38" },
{ 5500000, "lvl 39" },
{ 6000000, "lvl 40" },
{ 6100000, "lvl 41" },
{ 6200000, "lvl 42" },
{ 6300000, "lvl 43" },
{ 6400000, "lvl 44" },
{ 6500000, "lvl 45" },
{ 6600000, "lvl 46" },
{ 6700000, "lvl 47" },
{ 6800000, "lvl 48" },
{ 6900000, "lvl 49" },
{ 7000000, "lvl 50" },
{ 7500000, "lvl 51" },
{ 8000000, "lvl 52" },
{ 8500000, "lvl 53" },
{ 9000000, "lvl 54" },
{ 9500000, "lvl 55" },
{ 10000000, "lvl 56" },
{ 11000000, "lvl 57" },
{ 12000000, "lvl 58" },
{ 13000000, "lvl 59" },
{ 14000000, "lvl 60" },
{ 15000000, "lvl 61" },
{ 16000000, "lvl 62" },
{ 17000000, "lvl 63" },
{ 18000000, "lvl 64" },
{ 19000000, "lvl 65" },
{ 20000000, "lvl 66" },
{ 25000000, "lvl 67" },
{ 30000000, "lvl 68" },
{ 35000000, "lvl 69" },
{ 40000000, "lvl 70" },
{ 45000000, "lvl 71" },
{ 50000000, "lvl 72" },
{ 55000000, "lvl 73" },
{ 60000000, "lvl 74" },
{ 65000000, "lvl 75" },
{ 70000000, "lvl 76" },
{ 75000000, "lvl 77" },
{ 80000000, "lvl 78" },
{ 85000000, "lvl 79" },
{ 90000000, "lvl 80" },
{ 100000000, "lvl 81" },
{ 110000000, "lvl 82" },
{ 120000000, "lvl 83" },
{ 130000000, "lvl 84" },
{ 140000000, "lvl 85" },
{ 150000000, "lvl 86" },
{ 160000000, "lvl 87" },
{ 170000000, "lvl 88" },
{ 180000000, "lvl 89" },
{ 190000000, "lvl 90" },
{ 200000000, "lvl 91" },
{ 250000000, "lvl 92" },
{ 300000000, "lvl 93" },
{ 400000000, "lvl 94" },
{ 450000000, "lvl 95" },
{ 500000000, "lvl 96" },
{ 550000000, "lvl 97" },
{ 700000000, "lvl 98" },
{ 850000000, "lvl 99" },
{ 1000000000, "lvl 100" },
{ 1500000000, "lvl 101" }

};

BaseLoadConfig()
{
if (ForceOverwrite) return;
new temp[MAX_STRING];
if (!dini_Exists(ConfigDB))
{
dini_Create(ConfigDB);
}
set(temp,dini_Get(ConfigDB,"Level_DB"));
if (strlen(temp) > 0) set(LevelDB,temp);

set(temp,dini_Get(ConfigDB,"Verbose_Save"));
if (strlen(temp) > 0) VerboseSave = strval(temp);

set(temp,dini_Get(ConfigDB,"Real_Time"));
if (strlen(temp) > 0) RealTime = strval(temp);

if (!dini_Exists(LevelDB))
{
BaseSaveConfig();
}
for (new i=0;i<=MAX_LEVEL;i++)
{
new tempname[MAX_STRING];
format(tempname,sizeof(tempname),"Level%d_Rankname",i);
set(temp,dini_Get(LevelDB,tempname));
if (strlen(temp) > 0) set(LevelList[i][level_name],temp);

format(tempname,sizeof(tempname),"Level%d_Experience",i);
set(temp,dini_Get(LevelDB,tempname));
if (strlen(temp) > 0) LevelList[i][level_xp] = strval(temp);
}
return;
}

BaseSaveConfig()
{
new temp[MAX_STRING];
if (dini_Exists(ConfigDB))
{
dini_Set(ConfigDB,"Level_DB",LevelDB);

valstr(temp,VerboseSave);
dini_Set(ConfigDB,"Verbose_Save",temp);

valstr(temp,RealTime);
dini_Set(ConfigDB,"Real_Time",temp);
}

if (!dini_Exists(LevelDB))
{
dini_Create(LevelDB);
}
for (new i=0;i<=MAX_LEVEL;i++)
{
new tempname[MAX_STRING];
format(tempname,sizeof(tempname),"Level%d_Rankname",i);
dini_Set(LevelDB,tempname,LevelList[i][level_name]);

format(tempname,sizeof(tempname),"Level%d_Experience",i);
valstr(temp,LevelList[i][level_xp]);
dini_Set(LevelDB,tempname,temp);
}
return;
}

GetLevelName(level)
{
new name[MAX_NAME];
if ((level < 0) || (level > MAX_LEVEL+1)) return name;
set(name,LevelList[level][level_name]);
return name;
}
[/pwn]

Добавлено (25.12.2008, 00:26)
---------------------------------------------
все скажите плиз ошибки


Заказать бесплатно Графику
< < < < < ЖМИ
MiniDM 1 100% Скачать
Ghost-XДата: Четверг, 25.12.2008, 00:26 | Сообщение # 44
Мастер джэдай
Группа: Продвинутые
Сообщений: 3548
Награды: 36
Город: Наб. Челны
Репутация: 856
Замечания: 40%
Статус:
Quote (odyvan)
GhostTT, тыб лучше мне помог бы bad

хм...видимо ты указал кол-во опыта с 2 до 20 по 0, ну типа с 1 по 2 над качать 1000хр, потом с 2 до 3 0 хр, вот у тя может в етом ошибка, пересмори инклуд base



Спор на форуме, все равно что олимпиада среди умственно отсталых: даже если ты победил, ты все равно гермофродит.
Хочешь остаться при своем мнении - держи его при себе.
Persey_Дата: Четверг, 25.12.2008, 00:27 | Сообщение # 45
Местный
Группа: I'm V.I.P.
Сообщений: 850
Награды: 35
Город: New-York City
Репутация: 635
Замечания: 0%
Статус:
[offtop]Ща гляну[/offtop]
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua