admin Дата: Пятница, 23.09.2011, 15:21:41 | Сообщение # 1
Группа: Администраторы
Сообщений: 3869
как вы видете все на видео все видно прекрасно :)) и поняли что это за камера И так начнем уроку! верху мода: Code
new mapstarted[MAX_PLAYERS] = 0; new Float:OriginalX[MAX_PLAYERS], Float:OriginalY[MAX_PLAYERS], Float:OriginalZ[MAX_PLAYERS]; new Float:mapX[MAX_PLAYERS] = 1743.8674, Float:mapY[MAX_PLAYERS] = 1453.9987, Float:mapZ[MAX_PLAYERS] = 350.0000;
После этого ищем public OnGameModeInit() и туда вставляем: Code
for(new i = 0; i < MAX_PLAYERS; i++) { mapX[i] = 1729.4530; mapY[i] = 1461.4821; mapZ[i] = 350.0000; mapstarted[i] = 0; }
Примерно так должен быть public: Code
public OnGameModeInit() { for(new i = 0; i < MAX_PLAYERS; i++) { mapX[i] = 1729.4530; mapY[i] = 1461.4821; mapZ[i] = 350.0000; mapstarted[i] = 0; } return 1; }
После этого ищем public OnPlayerDisconnect и туда вставляем: Code
mapX[playerid] = 1743.8674; mapY[playerid] = 1453.9987; mapZ[playerid] = 350.0000; mapstarted[playerid] = 0;
Примерно так должен быть public: Code
public OnPlayerDisconnect(playerid, reason) { mapX[playerid] = 1743.8674; mapY[playerid] = 1453.9987; mapZ[playerid] = 350.0000; mapstarted[playerid] = 0; return 1; }
После этого ищем public OnPlayerCommandText и туда вставляем: Code
if(strcmp(cmdtext, "/mapon", true, 10) == 0) { new Float:X, Float:Y, Float:Z; GetPlayerPos(playerid, X, Y, Z); OriginalX[playerid] = X; OriginalY[playerid] = Y; OriginalZ[playerid] = Z; mapstarted[playerid] = 1; TogglePlayerControllable(playerid, 0); SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } if(strcmp(cmdtext, "/mapoff", true, 10) == 0) { mapstarted[playerid] = 0; TogglePlayerControllable(playerid, 1); SetPlayerPos(playerid, OriginalX[playerid], OriginalY[playerid], OriginalZ[playerid]); SetCameraBehindPlayer(playerid); return 1; }
Примерно так должен быть public: Code
public OnPlayerCommandText(playerid, cmdtext[]) { if(strcmp(cmdtext, "/mapon", true, 10) == 0) { new Float:X, Float:Y, Float:Z; GetPlayerPos(playerid, X, Y, Z); OriginalX[playerid] = X; OriginalY[playerid] = Y; OriginalZ[playerid] = Z; mapstarted[playerid] = 1; TogglePlayerControllable(playerid, 0); SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } if(strcmp(cmdtext, "/mapoff", true, 10) == 0) { mapstarted[playerid] = 0; TogglePlayerControllable(playerid, 1); SetPlayerPos(playerid, OriginalX[playerid], OriginalY[playerid], OriginalZ[playerid]); SetCameraBehindPlayer(playerid); return 1; } return 0; }
После этого ищем public OnPlayerUpdate и туда вставляем: Code
if(mapstarted[playerid] == 1) { new o,ud,lr; GetPlayerKeys(playerid,o,ud,lr); if(ud > 0) { mapY[playerid] = mapY[playerid] - 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); } else if(ud < 0) { mapY[playerid] = mapY[playerid] + 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } if(lr > 0) { mapX[playerid] = mapX[playerid] + 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); } else if(lr < 0) { mapX[playerid] = mapX[playerid] - 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } }
Примерно так должен быть public: Code
public OnPlayerUpdate(playerid) { if(mapstarted[playerid] == 1) { new o,ud,lr; GetPlayerKeys(playerid,o,ud,lr); if(ud > 0) { mapY[playerid] = mapY[playerid] - 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); } else if(ud < 0) { mapY[playerid] = mapY[playerid] + 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } if(lr > 0) { mapX[playerid] = mapX[playerid] + 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); } else if(lr < 0) { mapX[playerid] = mapX[playerid] - 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } } return 1; }
После этого ищем public OnPlayerKeyStateChange и туда вставляем: Code
if(mapstarted[playerid] == 1) { if(newkeys & KEY_SPRINT) // + { mapZ[playerid] = mapZ[playerid] + 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); } else if(newkeys & KEY_CROUCH) // - { mapZ[playerid] = mapZ[playerid] - 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } }
Примерно так должен быть public: Code
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { if(mapstarted[playerid] == 1) { if(newkeys & KEY_SPRINT) // + { mapZ[playerid] = mapZ[playerid] + 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); } else if(newkeys & KEY_CROUCH) // - { mapZ[playerid] = mapZ[playerid] - 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } } return 1; }
Автор кода: irinel1996 Урок by - 26_RUSSS
zm-jail.ru Разработка сайта samp-pawno.ru
Сообщение как вы видете все на видео все видно прекрасно :)) и поняли что это за камера И так начнем уроку! верху мода: Code
new mapstarted[MAX_PLAYERS] = 0; new Float:OriginalX[MAX_PLAYERS], Float:OriginalY[MAX_PLAYERS], Float:OriginalZ[MAX_PLAYERS]; new Float:mapX[MAX_PLAYERS] = 1743.8674, Float:mapY[MAX_PLAYERS] = 1453.9987, Float:mapZ[MAX_PLAYERS] = 350.0000;
После этого ищем public OnGameModeInit() и туда вставляем: Code
for(new i = 0; i < MAX_PLAYERS; i++) { mapX[i] = 1729.4530; mapY[i] = 1461.4821; mapZ[i] = 350.0000; mapstarted[i] = 0; }
Примерно так должен быть public: Code
public OnGameModeInit() { for(new i = 0; i < MAX_PLAYERS; i++) { mapX[i] = 1729.4530; mapY[i] = 1461.4821; mapZ[i] = 350.0000; mapstarted[i] = 0; } return 1; }
После этого ищем public OnPlayerDisconnect и туда вставляем: Code
mapX[playerid] = 1743.8674; mapY[playerid] = 1453.9987; mapZ[playerid] = 350.0000; mapstarted[playerid] = 0;
Примерно так должен быть public: Code
public OnPlayerDisconnect(playerid, reason) { mapX[playerid] = 1743.8674; mapY[playerid] = 1453.9987; mapZ[playerid] = 350.0000; mapstarted[playerid] = 0; return 1; }
После этого ищем public OnPlayerCommandText и туда вставляем: Code
if(strcmp(cmdtext, "/mapon", true, 10) == 0) { new Float:X, Float:Y, Float:Z; GetPlayerPos(playerid, X, Y, Z); OriginalX[playerid] = X; OriginalY[playerid] = Y; OriginalZ[playerid] = Z; mapstarted[playerid] = 1; TogglePlayerControllable(playerid, 0); SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } if(strcmp(cmdtext, "/mapoff", true, 10) == 0) { mapstarted[playerid] = 0; TogglePlayerControllable(playerid, 1); SetPlayerPos(playerid, OriginalX[playerid], OriginalY[playerid], OriginalZ[playerid]); SetCameraBehindPlayer(playerid); return 1; }
Примерно так должен быть public: Code
public OnPlayerCommandText(playerid, cmdtext[]) { if(strcmp(cmdtext, "/mapon", true, 10) == 0) { new Float:X, Float:Y, Float:Z; GetPlayerPos(playerid, X, Y, Z); OriginalX[playerid] = X; OriginalY[playerid] = Y; OriginalZ[playerid] = Z; mapstarted[playerid] = 1; TogglePlayerControllable(playerid, 0); SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } if(strcmp(cmdtext, "/mapoff", true, 10) == 0) { mapstarted[playerid] = 0; TogglePlayerControllable(playerid, 1); SetPlayerPos(playerid, OriginalX[playerid], OriginalY[playerid], OriginalZ[playerid]); SetCameraBehindPlayer(playerid); return 1; } return 0; }
После этого ищем public OnPlayerUpdate и туда вставляем: Code
if(mapstarted[playerid] == 1) { new o,ud,lr; GetPlayerKeys(playerid,o,ud,lr); if(ud > 0) { mapY[playerid] = mapY[playerid] - 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); } else if(ud < 0) { mapY[playerid] = mapY[playerid] + 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } if(lr > 0) { mapX[playerid] = mapX[playerid] + 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); } else if(lr < 0) { mapX[playerid] = mapX[playerid] - 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } }
Примерно так должен быть public: Code
public OnPlayerUpdate(playerid) { if(mapstarted[playerid] == 1) { new o,ud,lr; GetPlayerKeys(playerid,o,ud,lr); if(ud > 0) { mapY[playerid] = mapY[playerid] - 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); } else if(ud < 0) { mapY[playerid] = mapY[playerid] + 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } if(lr > 0) { mapX[playerid] = mapX[playerid] + 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); } else if(lr < 0) { mapX[playerid] = mapX[playerid] - 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } } return 1; }
После этого ищем public OnPlayerKeyStateChange и туда вставляем: Code
if(mapstarted[playerid] == 1) { if(newkeys & KEY_SPRINT) // + { mapZ[playerid] = mapZ[playerid] + 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); } else if(newkeys & KEY_CROUCH) // - { mapZ[playerid] = mapZ[playerid] - 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } }
Примерно так должен быть public: Code
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { if(mapstarted[playerid] == 1) { if(newkeys & KEY_SPRINT) // + { mapZ[playerid] = mapZ[playerid] + 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); } else if(newkeys & KEY_CROUCH) // - { mapZ[playerid] = mapZ[playerid] - 10.0000; SetPlayerCameraPos(playerid, mapX[playerid], mapY[playerid], mapZ[playerid]); SetPlayerCameraLookAt(playerid, mapX[playerid], mapY[playerid], 15.3746); SetPlayerPos(playerid,mapX[playerid], mapY[playerid], mapZ[playerid] + 10.0000); return 1; } } return 1; }
Автор кода: irinel1996 Урок by - 26_RUSSS Автор - admin Дата добавления - 23.09.2011 в 15:21:41