помогите....как опредИлить координаты территории..ну..это..чёбы можно было покрасить в опр. цвет...
_____________________________________________
Видел подобную тему,но непомню где
......если можно перенесите туда.... ПЫ.СЫ. Я
Добавлено (29.12.2007, 21:28)
---------------------------------------------
всё разобрался....если кому интиресно вот как:
вот 4 точки
1- 2221.2427,-1145.6298,25.8034,263.1762
2- 1838.8296,-1039.6176,25.1744,64.0649
3- 1840.4187,-1471.2916,13.5652,170.0149
4- 2216.5095,-1390.0703,23.8203,256.3846
чтобы создать территорю надо всеволиш "х" и "у"... т.е..
нужен "х" первой точки и "у" второй , "х" третей точки и "у" четвёртой (см. выделеное)
Вот чё получилось:
ballaszone = GangZoneCreate(2221.2427,-1039.6176,1840.4187,-1390.0703);
Добавлено (29.12.2007, 21:31)
---------------------------------------------
в чём ошибка??...меня когда убивают игра вылетает
нарезка отсюда "baserace"
Добавлено (29.12.2007, 22:31)
---------------------------------------------
[code]#include <a_samp>
#include <float>
static gTeam[MAX_PLAYERS]; // Tracks the team assignment for each player
#define TEAM_Groove 1
#define TEAM_Ballas 2
#define TEAM_Groove_COLOR 0x33AA33FF
#define TEAM_Ballas_COLOR 0xFF66FFAA
#define COLOR_GREEN 0x33AA33AA
#define COLOR_LIGHTBLUE 0x4040FFAA
#define COLOR_LIGHTRED 0xFF2121AA
#define COLOR_DARKBLUE 0x0000C0AA
#define COLOR_DARKRED 0xC00000AA
#define COLOR_RED 0xAA3333AA // RED
#define COLOR_GREEN1 0x33AA33FF // GREEN
forward SetPlayerToTeamColor(playerid);
forward SetupPlayerForClassSelection(playerid, classid);
forward SetPlayerTeamFromClass(playerid,classid);
forward SendPlayerFormattedText(playerid, const str[], color);
forward tune(vehicleid);
new ballaszone;
new groovezone;
new copszone;
new azteczone;
new tk[MAX_PLAYERS];
main()
{
print("\n----------------------------------");
print("Los SantosTDM");
print("----------------------------------\n");
}
public OnGameModeInit()
{
print("GameModeInit()");
SetGameModeText(" ~d~ ~g~Los Santos ~r~TDM~u~ ]");
SetTeamCount(2);
ShowNameTags(1);
ShowPlayerMarkers(0);
SetWorldTime(2);
//Blue Vehicles
CreateVehicle(426, 2473.389648, -1692.279663, 13.174879, 360, 2, 2, 120);
CreateVehicle(402, 2484.451172, -1683.837891, 13.153580, 271, 2, 2, 120);
CreateVehicle(415, 2507.868408, -1686.187256, 13.382275, 44, 2, 2, 120);
CreateVehicle(445, 2506.340332, -1678.003296, 13.202512, 316, 2, 2, 120);
CreateVehicle(467, 2473.109619, -1681.608765, 13.224833, 327, 2, 2, 120);
CreateVehicle(480, 2460.169434, -1671.386597, 13.319103, 360, 2, 2, 120);
CreateVehicle(471, 2454.721191, -1671.590942, 13.319701, 360, 2, 2, 120);
CreateVehicle(478, 2502.229004, -1656.173706, 13.243270, 56, 2, 2, 120);
CreateVehicle(477, 2483.768555, -1654.298218, 13.127489, 89, 2, 2, 120);
CreateVehicle(554, 2443.474609, -1646.283447, 13.296807, 179, 2, 2, 120);
CreateVehicle(405, 2376.552490, -1664.049438, 13.811875, 90, 2, 2, 120);
CreateVehicle(413, 2403.538574, -1644.630005, 13.811875, 181, 2, 2, 120);
CreateVehicle(422, 2384.220215, -1644.915527, 13.788892, 360, 2, 2, 120);
//Red Vehicles
CreateVehicle(400,845.9137,-1199.3220,17,180.9539,3,3, 120);
CreateVehicle(401,851.3794,-1198.2346,17,180.3556,3,3, 120);
CreateVehicle(402,883.4802,-1197.2079,17,180.7407,3,3, 120);
CreateVehicle(405,828.8291,-1207.1685,17,270.8887,3,3, 120);
CreateVehicle(424,853.9090,-1227.8312,16,270.9954,3,3, 120);
CreateVehicle(434,867.2651,-1286.2450,14,0,3,3, 120);
CreateVehicle(542,850.2413,-1294.6011,14,270.2073,3,3, 120);
CreateVehicle(558,851.3859,-1285.4800,14,270.5576,3,3, 120);
CreateVehicle(566,854.5298,-1272.0676,15,270.3849,3,3, 120);
CreateVehicle(480,884.6514,-1252.2334,15,360.6153,3,3, 120);
CreateVehicle(412,897.9283,-1270.0790,15,90.9283,3,3, 120);
CreateVehicle(422,923.3892,-1293.1055,14,90.9967,3,3, 120);
CreateVehicle(415,914.4268,-1229.6899,17,270.9797,3,3, 120);
CreateVehicle(491,904.6953,-1239.3925,16.2,0,3,3, 120);
//trucks tuning
AddVehicleComponent(1, 1010);
AddVehicleComponent(1, 1087);
AddVehicleComponent(3, 1010);
AddVehicleComponent(3, 1087);
//vehicles tuning-blue
AddVehicleComponent(5, 1075);
AddVehicleComponent(6, 1074);
AddVehicleComponent(7, 1073);
AddVehicleComponent(8, 1079);
AddVehicleComponent(9, 1080);
AddVehicleComponent(10, 1081);
AddVehicleComponent(11, 1082);
AddVehicleComponent(12, 1085);
AddVehicleComponent(13, 1096);
AddVehicleComponent(14, 1097);
AddVehicleComponent(15, 1098);
AddVehicleComponent(16, 1075);
AddVehicleComponent(17, 1074);
//vehicles tuning-red
AddVehicleComponent(18, 1075);
AddVehicleComponent(19, 1074);
AddVehicleComponent(20, 1073);
AddVehicleComponent(21, 1079);
AddVehicleComponent(22, 1080);
AddVehicleComponent(23, 1081);
AddVehicleComponent(24, 1082);
AddVehicleComponent(25, 1085);
AddVehicleComponent(26, 1096);
AddVehicleComponent(27, 1097);
AddVehicleComponent(28, 1098);
AddVehicleComponent(29, 1075);
AddVehicleComponent(30, 1098);
AddVehicleComponent(31, 1074);
//-----------------------------------GROOVE SPAWNS-------------------------------
AddPlayerClass(105,2503.7444,-1661.7522,13.3878,92.6950,24,500,31,10000,28,9000); //
AddPlayerClass(106,2503.7444,-1661.7522,13.3878,92.6950,24,500,31,10000,28,9000); //
AddPlayerClass(107,2503.7444,-1661.7522,13.3878,92.6950,24,500,31,10000,28,9000); //
AddPlayerClass(293,2503.7444,-1661.7522,13.3878,92.6950,24,500,31,10000,28,9000);
//-----------------------------------BALLAS SPAWNS--------------------------------
AddPlayerClass(102,2022.7433,-1125.1249,25.8234,181.7161,24,500,31,10000,28,9000); //
AddPlayerClass(103,2090.3696,-1141.1191,25.5860,83.3286,24,500,31,10000,28,9000); //
AddPlayerClass(104,2089.6572,-1123.4838,26.7344,83.1837,24,500,31,10000,28,9000); //
groovezone = GangZoneCreate(2071.699, -1855.563, 2630.716, -1520.005);
ballaszone = GangZoneCreate(2221.2427,-1039.6176,1840.4187,-1390.0703);
copszone = GangZoneCreate(1517.9867,-1600.6943,1611.8267,-1724.0956);
azteczone = GangZoneCreate(1965.2405,-2171.3516,1647.4690,-1817.761);
SetGameModeText("Baserace v1.0");
return 1;
}
public OnGameModeExit()
{
print("GameModeExit");
return 1;
}
Добавлено (29.12.2007, 22:31)
---------------------------------------------
//------------------------------------------------------------------------------
public SetupPlayerForClassSelection(playerid, classid)
{
if(classid == 0 || classid == 1 || classid == 2 || classid == 3 ) {
SetPlayerInterior(playerid, 8);
SetPlayerPos(playerid,2805.5713,-1172.0177,1025.5703); // 2494.2473,-1692.3293,23.6778
SetPlayerCameraPos(playerid,2808.5713,-1172.0177,1026.5703); // 2494.2473,-1697.3293,23.6778
SetPlayerCameraLookAt(playerid,2805.5713,-1172.0177,1025.5703); // 2494.2473,-1692.3293,23.6778
SetPlayerFacingAngle(playerid,270); // 180
} else if(classid == 4 || classid == 5 || classid == 6 ) {
SetPlayerInterior(playerid, 8);
SetPlayerPos(playerid,2812.7700,-1172.3342,1025.5778); // 909.5185,-1235.4344,20.3676
SetPlayerCameraPos(playerid,2809.7700,-1172.3342,1026.5778); // 914.5185,-1235.4344,20.3676
SetPlayerCameraLookAt(playerid,2812.7700,-1172.3342,1025.5778); // 909.5185,-1235.4344,20.3676
SetPlayerFacingAngle(playerid,90); // 270
}
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetupPlayerForClassSelection(playerid, classid);
SetPlayerTeamFromClass(playerid,classid);
if(classid == 0 || classid == 1 || classid == 2 || classid == 3 ) {
GameTextForPlayer(playerid,"~g~Groove ~g~St",1000,5);
} else if(classid == 4 || classid == 5 || classid == 6 ) {
GameTextForPlayer(playerid,"~r~Ballas ~r~TEAM",1000,5);
}
return 1;
}
public SetPlayerTeamFromClass(playerid,classid)
{
// Set their team number based on the class they selected.
if(classid == 0 || classid == 1 || classid == 2 || classid == 3 ) {
gTeam[playerid] = TEAM_Groove;
} else if(classid == 4 || classid == 5 || classid == 6 ) {
gTeam[playerid] = TEAM_Ballas;
}
}
public SetPlayerToTeamColor(playerid)
{
if(gTeam[playerid] == TEAM_Groove) {
SetPlayerColor(playerid,TEAM_Groove_COLOR); // green
} else if(gTeam[playerid] == TEAM_Ballas) {
SetPlayerColor(playerid,TEAM_Ballas_COLOR); //pink
}
}
public OnPlayerRequestSpawn(playerid)
{
return 1;
}
public OnPlayerConnect(playerid)
{
GameTextForPlayer(playerid," ~d~ ~g~Los Santos ~r~TDM ~u~ ]",2500,5);
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
return 1;
}
public OnPlayerSpawn(playerid)
{
SetPlayerInterior(playerid,0);
GangZoneShowForPlayer(playerid, groovezone,0x33AA33AA );
GangZoneShowForPlayer(playerid, ballaszone, 0xFF66FFAA);
GangZoneShowForPlayer(playerid, copszone,0x3333AAAA);
GangZoneShowForPlayer(playerid, azteczone,0x33CCFFAA );
SetPlayerToTeamColor(playerid);
if(gTeam[playerid] == TEAM_Groove)
{
SetPlayerInterior(playerid, 0);
GameTextForPlayer(playerid, "Welcom to Los Santos TDM", 5000,5);
}
else if(gTeam[playerid] == TEAM_Ballas) {
SetPlayerInterior(playerid, 0);
GameTextForPlayer(playerid, "Welcom to Los Santos TDM", 5000,5);
}
ResetPlayerMoney(playerid);
GivePlayerMoney(playerid, 2500);
return 1;
}
//------------------------------------------------------------------------------
public OnPlayerDeath(playerid, killerid, reason)
{
if(killerid == INVALID_PLAYER_ID) {
SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
} else {
if(gTeam[killerid] != gTeam[playerid]) {
// Valid kill
SendDeathMessage(killerid,playerid,reason);
SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
GivePlayerMoney(killerid, 1000);
}
else {
//Team Killer!
new warning[256];
format(warning, sizeof(warning), " Àêêóðàòíåå! Âû áóäåòå íàêàçàíû çà óáèéñòâî ñâîèõ òîâàðèùåé.");
SendClientMessage(killerid, 0xFFFF00AA, warning);
SendDeathMessage(killerid,playerid,reason);
GivePlayerMoney(killerid, -1000);
SetPlayerScore(killerid, GetPlayerScore(killerid) - 1);
}
}
return 1;
}
//-------------------------------------------------------------------------------
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/kill", cmdtext, true, 10) == 0)
{
SetPlayerHealth(playerid,0.0);
return 1;
}
//------------------------------------------------------------------------------
{
if (strcmp("/club", cmdtext, true, 10) == 0)
{
SetPlayerPos(playerid,1276.956543,-1259.291016,588.43376);
}
SetPlayerInterior(playerid,0);
return 1;
}
return 0;
}
//---------------------------------------------------
public OnVehicleSpawn(vehicleid)
{
if ((vehicleid==1)||(vehicleid==3)||(vehicleid==5)||(vehicleid==6)||(vehicleid==7)||(vehicleid==8)||(vehicleid==9)
||(vehicleid==10)||(vehicle id==11)||(vehicleid==12)||(vehicleid==13)||(vehicleid==14)||(vehicleid==15)||(vehicleid==16)
||(vehicleid==17)||(vehicleid==18)||(vehicleid ==19)||(vehicleid==20)||(vehicleid==21)||(vehicleid==22)||(vehicleid==23)
||(vehicleid==24)||(vehicleid==25)||(vehicleid==26)||(vehicleid== 27)||(vehicleid==28)||(vehicleid==29)||(vehicleid==30)
||(vehicleid==31))
{
SetTimerEx("tune",2000,0,"%d",vehicleid);
}
return 1;
}
public tune(vehicleid)
{
//trucks
AddVehicleComponent(1, 1010);
AddVehicleComponent(1, 1087);
AddVehicleComponent(3, 1010);
AddVehicleComponent(3, 1087);
//blue
AddVehicleComponent(5, 1075);
AddVehicleComponent(6, 1074);
AddVehicleComponent(7, 1073);
AddVehicleComponent(8, 1079);
AddVehicleComponent(9, 1080);
AddVehicleComponent(10, 1081);
AddVehicleComponent(11, 1082);
AddVehicleComponent(12, 1085);
AddVehicleComponent(13, 1096);
AddVehicleComponent(14, 1097);
AddVehicleComponent(15, 1098);
AddVehicleComponent(16, 1075);
AddVehicleComponent(17, 1074);
//red
AddVehicleComponent(18, 1075);
AddVehicleComponent(19, 1074);
AddVehicleComponent(20, 1073);
AddVehicleComponent(21, 1079);
AddVehicleComponent(22, 1080);
AddVehicleComponent(23, 1081);
AddVehicleComponent(24, 1082);
AddVehicleComponent(25, 1085);
AddVehicleComponent(26, 1096);
AddVehicleComponent(27, 1097);
AddVehicleComponent(28, 1098);
AddVehicleComponent(29, 1075);
AddVehicleComponent(30, 1098);
AddVehicleComponent(31, 1074);
}
public OnPlayerText(playerid, text[])
{
return 1;
}
public OnPlayerPrivmsg(playerid, recieverid, text[])
{
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
return 1;
}
public OnPlayerLeaveCheckpoint(playerid)
{
return 1;
}
public OnPlayerEnterRaceCheckpoint(playerid)
{
return 1;
}
public OnPlayerLeaveRaceCheckpoint(playerid)
{
return 1;
}
public OnRconCommand(cmd[])
{
return 1;
}
public OnObjectMoved(objectid)
{
return 1;
}
public OnPlayerObjectMoved(playerid, objectid)
{
return 1;
}
public OnPlayerSelectedMenuRow(playerid, row)
{
return 1;
}
public OnPlayerExitedMenu(playerid)
{
return 1;
}
public SendPlayerFormattedText(playerid, const str[], color)
{
new tmpbuf[256];
format(tmpbuf, sizeof(tmpbuf), str, 0);
SendClientMessage(playerid, color, tmpbuf);
}
public Exit()
{
for(new i=0; i<MAX_PLAYERS; i++){
TogglePlayerControllable(i, 1);
PlayerPlaySound(i, 1186, 0.0, 0.0, 0.0);
}
GameModeExit();
}
Добавлено (29.12.2007, 22:33)
---------------------------------------------
код переделан с "baserace"