Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 2 из 2

Тема: Рекурсия

  1. #1
    Аватар для verteich
    Пользователь

    Статус
    Оффлайн
    Регистрация
    01.03.2019
    Сообщений
    117
    Репутация:
    2 ±

    Рекурсия

    Подскажите, как исправить рекурсию?
    1. public PlayerSpawn(playerid)
    2. {
    3. if(IsPlayerNPC(playerid))return 1;
    4. if(IsPlayerInAnyVehicle(playerid))
    5. {
    6. new Float:X,Float:Y,Float:Z;
    7. GetPlayerPos(playerid,X,Y,Z);
    8. pTemp[playerid][pAntiAir] += 6;
    9. SetPlayerPos(playerid,X,Y,Z);
    10. SetTimerEx("PlayerSpawn", 50, false, "i", playerid);
    11. return 1;
    12. }
    13. SettingSpawn(playerid);
    14. AntiCheatsOFF(playerid, 2);
    15. if(EventStatus[playerid] == 1)
    16. {
    17. EventStatus[playerid] = 0;
    18. PlayerTextDrawDestroy(playerid, EventTimeTD[playerid][0]);
    19. PI[playerid][pEventTime] = 0;
    20. }
    21. if(pTemp[playerid][SPECTPLAYER]==true)SpecPl(playerid, false);
    22. else SpawnPlayer(playerid);
    23. time_lspawn = gettime();
    24. return 1;
    25. }
    26. SettingSpawn(playerid)
    27. {
    28. if(IsPlayerNPC(playerid)) return 1;
    29. f_TogglePlayerControllable(playerid, true);
    30. new skin = GetSkinOfPlayer(playerid);
    31.  
    32. if(PI[playerid][pHospital]>0)
    33. {
    34. if(PI[playerid][pHealth]>5) J_SetPlayerHealth(playerid,PI[playerid][pHealth]);
    35. else J_SetPlayerHealth(playerid,20);
    36. }
    37. else
    38. {
    39. if(PI[playerid][pLevel]>1)
    40. {
    41. PI[playerid][pHospital]=1;
    42. J_SetPlayerHealth(playerid,20);
    43. SendClientMessage(playerid,COLOR_WHITE,"{DFCFCF}[Информация] {FAAC58}Состояние здоровья слишком низкое! Необходимо вылечиться у врача или использовать аптечку!");
    44. }
    45. }
    46. if(PI[playerid][pJailTime] > 0)
    47. {
    48. new rand = random(3);
    49. if(PI[playerid][pSprunks]==1)
    50. {
    51. SetPlayerVirtualWorld(playerid, 11);
    52. SetSpawnInfoEx(playerid, skin, JailPos[rand][0], JailPos[rand][1], JailPos[rand][2], 180.0);//куды
    53. }
    54. else if(PI[playerid][pSprunks]==2)
    55. {
    56. SetPlayerVirtualWorld(playerid, 12);
    57. SetSpawnInfoEx(playerid, skin, JailPos[rand][0], JailPos[rand][1], JailPos[rand][2], 180.0);//куды
    58. }
    59. else if(PI[playerid][pSprunks]==3)
    60. {
    61. SetPlayerVirtualWorld(playerid, 13);
    62. SetSpawnInfoEx(playerid, skin, JailPos[3][0], JailPos[3][1], JailPos[3][2], 180.0);//куды
    63. }
    64. else
    65. {
    66. SetPlayerVirtualWorld(playerid, 11);
    67. SetSpawnInfoEx(playerid, skin, JailPos[rand][0], JailPos[rand][1], JailPos[rand][2], 180.0);//куды
    68. }
    69. SetPlayerInterior(playerid, 6);
    70. J_SetPlayerHealth(playerid,100);
    71. return 1;
    72. }
    73. else if(PI[playerid][pView]>0)
    74. {
    75. f_TogglePlayerControllable(playerid, false);
    76. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    77. SetSpawnInfoEx(playerid, skin, -799.1370,2831.1130,1501.9896, 550.0);//куды
    78. J_SetPlayerHealth(playerid,100);
    79. SetPlayerInterior(playerid, 6);
    80. SetPlayerVirtualWorld(playerid,6);
    81. return 1;
    82. }
    83. else if(PI[playerid][pHeal] > 0)//Если чувак спавниться в больничке
    84. {
    85. if(!IsAArmy(playerid))//если чувак не в армии
    86. {
    87. switch(random(4))//spawn больнички
    88. {
    89. case 0: SetSpawnInfoEx(playerid, skin, -1791.6775,-2010.7731,1501.1703,178.8611);
    90. case 1: SetSpawnInfoEx(playerid, skin, -1753.8512,-2017.1624,1501.1527,0.5960);
    91. case 2: SetSpawnInfoEx(playerid, skin, -1791.6775,-2010.7731,1501.3125,180.7411);
    92. case 3: SetSpawnInfoEx(playerid, skin, -1753.9198,-2010.6920,1501.1682,180.4044);
    93. }
    94. switch(PI[playerid][pCheepses])//spawn больнички
    95. {
    96. case 1:
    97. {
    98. f_TogglePlayerControllable(playerid, false);
    99. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    100. SetPlayerVirtualWorld(playerid, 1);
    101. SetPlayerInterior(playerid, 2);
    102. }
    103. case 2:
    104. {
    105. f_TogglePlayerControllable(playerid, false);
    106. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    107. SetPlayerVirtualWorld(playerid, 2);
    108. SetPlayerInterior(playerid, 3);
    109. }
    110. default:
    111. {
    112. f_TogglePlayerControllable(playerid, false);
    113. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    114. SetPlayerVirtualWorld(playerid, 3);
    115. SetPlayerInterior(playerid, 3);
    116. }
    117. }
    118. }
    119. if(PI[playerid][pHeal] > 0 && PI[playerid][pLevel] >= 20)
    120. {
    121. if(!IsAArmy(playerid))
    122. {
    123. switch(random(1))
    124. {
    125. case 0: SetSpawnInfoEx(playerid, skin, -1353.7018,8.3329,1601.0859,290.6552);
    126. }
    127. switch(PI[playerid][pCheepses])
    128. {
    129. case 1:
    130. {
    131. f_TogglePlayerControllable(playerid, false);
    132. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    133. SetPlayerVirtualWorld(playerid, 1);
    134. SetPlayerInterior(playerid, 2);
    135. }
    136. case 2:
    137. {
    138. f_TogglePlayerControllable(playerid, false);
    139. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    140. SetPlayerVirtualWorld(playerid, 2);
    141. SetPlayerInterior(playerid, 3);
    142. }
    143. default:
    144. {
    145. f_TogglePlayerControllable(playerid, false);
    146. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    147. SetPlayerVirtualWorld(playerid, 3);
    148. SetPlayerInterior(playerid, 3);
    149. }
    150. }
    151. }
    152. }
    153. else
    154. {
    155. if(GetTeamID(playerid) == TEAM_ARMY) SetSpawnInfoEx(playerid, skin, 661.4579,-1669.5214,871.2830,1.3154);//spawn армии.
    156. if(GetTeamID(playerid) == TEAM_ARMYLV) SetSpawnInfoEx(playerid, skin, 549.5598,1466.0801,1900.7980,353.8267);//spawn армии.
    157. if(GetTeamID(playerid) == TEAM_ARMYSF) SetSpawnInfoEx(playerid, skin, -1609.6104,-113.5421,1501.0859,179.3103);//spawn армии.
    158. SetPlayerVirtualWorld(playerid, 1);
    159. SetPlayerInterior(playerid, 2);
    160. return 1;
    161. }
    162. J_SetPlayerHealth(playerid,25);
    163. if(startlomka[playerid]==1)PI[playerid][pOldRepl]=0;
    164. return 1;
    165. }
    166. else//спавн дома
    167. { //СПАВНЫ ПО ЛВЛАМ
    168. if(PI[playerid][pDCTime]==0)
    169. {
    170. f_TogglePlayerControllable(playerid, false);
    171. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    172. SetPlayerInterior(playerid, 0);
    173. SetPlayerVirtualWorld(playerid, 0);
    174. if(PI[playerid][pLevel] < 3 )
    175. {
    176. if(PI[playerid][pRace]==0)
    177. {
    178. switch(random(5))
    179. {
    180. case 0:SetSpawnInfoEx(playerid, skin, 1759.0187,-1885.4315,13.5558,178.4195);
    181. case 1:SetSpawnInfoEx(playerid, skin, 1765.3536,-1902.9863,13.5661,355.7444);
    182. case 2:SetSpawnInfoEx(playerid, skin, 1754.4703,-1902.8092,13.5634,270.8537);
    183. case 3:SetSpawnInfoEx(playerid, skin, 1754.3486,-1894.5731,13.5569,268.6604);
    184. }
    185. return 1;
    186. }
    187. else
    188. {
    189. SetSpawnInfoEx(playerid, skin, 2229.4236,-1156.9237,25.8201,39.4635);
    190. return 1;
    191. }
    192. }
    193. else if(PI[playerid][pLevel] >= 3 && PI[playerid][pLevel] <=4)
    194. {
    195. switch(random(2))
    196. {
    197. case 0:SetSpawnInfoEx(playerid, skin, -1975.1952,137.6538,27.6873,94.4402);
    198. case 1:SetSpawnInfoEx(playerid, skin, -1972.2318,122.2105,27.6873,5.4760);
    199. }
    200. return 1;
    201. }
    202. else if(PI[playerid][pLevel] >= 7 && PI[playerid][pLevel] <=19)
    203. {
    204. switch(random(4))
    205. {
    206. case 0:SetSpawnInfoEx(playerid, skin, 2859.1819,1259.2250,11.3906,331.3528);
    207. case 1:SetSpawnInfoEx(playerid, skin, 2859.4858,1284.0747,11.3906,201.6550);
    208. case 2:SetSpawnInfoEx(playerid, skin, 2858.7656,1320.1461,11.3906,223.5886);
    209. case 3:SetSpawnInfoEx(playerid, skin, 2848.8167,1293.3512,11.3906,99.5075);
    210. }
    211. return 1;
    212. }
    213. else if(PI[playerid][pLevel] >= 20)
    214. {
    215. SetSpawnInfoEx(playerid, skin, -71.1408,1223.8297,19.6863,119.4150);
    216. return 1;
    217. }
    218.  
    219. }
    220. if(PI[playerid][pDCTime] == 5)
    221. {
    222. if(pFam > 0)
    223. {
    224. if(FamilyInfo[pFam][fHouse] != -1)
    225. {
    226. TogglePlayerControllable(playerid,false);
    227. SetPlayerSkin(playerid, skin);
    228. J_SetPlayerPos(playerid, famHouse[FamilyInfo[pFam][fHouse]][famHouse_Exit_X]+5.0, famHouse[FamilyInfo[pFam][fHouse]][famHouse_Exit_Y], famHouse[FamilyInfo[pFam][fHouse]][famHouse_Exit_Z]);
    229. SetPlayerFacingAngle(playerid, 269.2998);
    230. SetPlayerInterior(playerid, famHouse[FamilyInfo[pFam][fHouse]][famHouse_INT]);
    231. SetPlayerVirtualWorld(playerid, (famHouse[FamilyInfo[pFam][fHouse]][famHouse_ID]+50));
    232. SetTimerEx("UnFreez",3000, false, "d", playerid);
    233. return true;
    234. }
    235. else
    236. {
    237. PI[playerid][pDCTime] = 0;
    238. PlayerSpawn(playerid);
    239. }
    240. }
    241. else
    242. {
    243. PI[playerid][pDCTime] = 0;
    244. PlayerSpawn(playerid);
    245. }
    246. }
    247. if(PI[playerid][pDCTime]==2 && PI[playerid][pHouseKey] != -1)//проверка выбора спавна и наличия ключей
    248. {
    249. if(GetString(HouseInfo[PI[playerid][pHouseKey]][hOwner],Name(playerid)))//проверка соответствия имени и
    250. {
    251. HouseEntered[playerid] = PI[playerid][pHouseKey];//отмечает в каком доме находиться чувак и отправляет его туда
    252. SetSpawnInfoEx(playerid, skin, HouseInfo[PI[playerid][pHouseKey]][hExit_X],HouseInfo[PI[playerid][pHouseKey]][hExit_Y],HouseInfo[PI[playerid][pHouseKey]][hExit_Z],0.0);
    253. //SetPlayerSkinEx(playerid, GetSkinOfPlayer(playerid));
    254. SetPlayerInterior(playerid,HouseInfo[PI[playerid][pHouseKey]][hInt]);
    255. SetPlayerVirtualWorld(playerid,PI[playerid][pHouseKey]+50);
    256. return 1;
    257. }
    258. else
    259. {
    260. new s = GetHouseStyle(PI[playerid][pHouseKey]);//тип дома
    261. for(new i;i < HouseRooms[s];i ++)// перебираеться количество комнат
    262. {
    263. if(GetString(HRoomOwner[PI[playerid][pHouseKey]][i],Name(playerid)))//возвращает комнаты
    264. {
    265. HouseEntered[playerid] = PI[playerid][pHouseKey];
    266. //SetSpawnInfoEx(playerid, skin, HouseInfo[PI[playerid][pHouseKey]][hExit_X],HouseInfo[PI[playerid][pHouseKey]][hExit_Y],HouseInfo[PI[playerid][pHouseKey]][hExit_Z],0.0);
    267. SetSpawnInfoEx(playerid, skin, HouseInfo[PI[playerid][pHouseKey]][hExit_X],HouseInfo[PI[playerid][pHouseKey]][hExit_Y],HouseInfo[PI[playerid][pHouseKey]][hExit_Z],0.0);
    268. //SetPlayerSkinEx(playerid, GetSkinOfPlayer(playerid));
    269. SetPlayerInterior(playerid,HouseInfo[PI[playerid][pHouseKey]][hInt]);
    270. SetPlayerVirtualWorld(playerid,PI[playerid][pHouseKey]+50);
    271. return 1;
    272. }
    273. }
    274. }
    275. }else if(PI[playerid][pDCTime]==3 && GetTeamID(playerid) != 0){//ниже если состоит в организации.
    276. J_SetPlayerFacingAngle(playerid,SpawnInfo[PI[playerid][pMember]][3]);
    277. SetPlayerInterior(playerid,SpawnIntWorld[PI[playerid][pMember]][0]);
    278. SetPlayerVirtualWorld(playerid,SpawnIntWorld[PI[playerid][pMember]][1]);
    279. SetSpawnInfoEx(playerid, skin, SpawnInfo[PI[playerid][pMember]][0], SpawnInfo[PI[playerid][pMember]][1], SpawnInfo[PI[playerid][pMember]][2], SpawnInfo[PI[playerid][pMember]][3]);
    280. return 1;
    281. }
    282. }
    283. SetSpawnInfoEx(playerid, skin, 167.5974,-109.2371,1.5501,272.6516);
    284. SetPlayerInterior(playerid, 0);
    285. SetPlayerVirtualWorld(playerid, 0);
    286. PI[playerid][pDCTime] = 0;
    287. //SetPlayerSkinEx(playerid, GetSkinOfPlayer(playerid));
    288. return 1;
    289. }

  2. #2
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    1. public PlayerSpawn(playerid)
    2. {
    3. if(IsPlayerNPC(playerid))return 1;
    4. if(IsPlayerInAnyVehicle(playerid))
    5. {
    6. new Float:X,Float:Y,Float:Z;
    7. GetPlayerPos(playerid,X,Y,Z);
    8. pTemp[playerid][pAntiAir] += 6;
    9. SetPlayerPos(playerid,X,Y,Z);
    10. SetTimerEx("PlayerSpawn", 50, false, "i", playerid);
    11. return 1;
    12. }
    13. SettingSpawn(playerid);
    14. AntiCheatsOFF(playerid, 2);
    15. if(EventStatus[playerid] == 1)
    16. {
    17. EventStatus[playerid] = 0;
    18. PlayerTextDrawDestroy(playerid, EventTimeTD[playerid][0]);
    19. PI[playerid][pEventTime] = 0;
    20. }
    21. if(pTemp[playerid][SPECTPLAYER]==true)SpecPl(playerid, false);
    22. else SpawnPlayer(playerid);
    23. time_lspawn = gettime();
    24. return 1;
    25. }
    26. SettingSpawn(playerid)
    27. {
    28. if(IsPlayerNPC(playerid)) return 1;
    29. f_TogglePlayerControllable(playerid, true);
    30. new skin = GetSkinOfPlayer(playerid);
    31.  
    32. if(PI[playerid][pHospital]>0)
    33. {
    34. if(PI[playerid][pHealth]>5) J_SetPlayerHealth(playerid,PI[playerid][pHealth]);
    35. else J_SetPlayerHealth(playerid,20);
    36. }
    37. else
    38. {
    39. if(PI[playerid][pLevel]>1)
    40. {
    41. PI[playerid][pHospital]=1;
    42. J_SetPlayerHealth(playerid,20);
    43. SendClientMessage(playerid,COLOR_WHITE,"{DFCFCF}[Информация] {FAAC58}Состояние здоровья слишком низкое! Необходимо вылечиться у врача или использовать аптечку!");
    44. }
    45. }
    46. if(PI[playerid][pJailTime] > 0)
    47. {
    48. new rand = random(3);
    49. if(PI[playerid][pSprunks]==1)
    50. {
    51. SetPlayerVirtualWorld(playerid, 11);
    52. SetSpawnInfoEx(playerid, skin, JailPos[rand][0], JailPos[rand][1], JailPos[rand][2], 180.0);//куды
    53. }
    54. else if(PI[playerid][pSprunks]==2)
    55. {
    56. SetPlayerVirtualWorld(playerid, 12);
    57. SetSpawnInfoEx(playerid, skin, JailPos[rand][0], JailPos[rand][1], JailPos[rand][2], 180.0);//куды
    58. }
    59. else if(PI[playerid][pSprunks]==3)
    60. {
    61. SetPlayerVirtualWorld(playerid, 13);
    62. SetSpawnInfoEx(playerid, skin, JailPos[3][0], JailPos[3][1], JailPos[3][2], 180.0);//куды
    63. }
    64. else
    65. {
    66. SetPlayerVirtualWorld(playerid, 11);
    67. SetSpawnInfoEx(playerid, skin, JailPos[rand][0], JailPos[rand][1], JailPos[rand][2], 180.0);//куды
    68. }
    69. SetPlayerInterior(playerid, 6);
    70. J_SetPlayerHealth(playerid,100);
    71. return 1;
    72. }
    73. else if(PI[playerid][pView]>0)
    74. {
    75. f_TogglePlayerControllable(playerid, false);
    76. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    77. SetSpawnInfoEx(playerid, skin, -799.1370,2831.1130,1501.9896, 550.0);//куды
    78. J_SetPlayerHealth(playerid,100);
    79. SetPlayerInterior(playerid, 6);
    80. SetPlayerVirtualWorld(playerid,6);
    81. return 1;
    82. }
    83. else if(PI[playerid][pHeal] > 0)//Если чувак спавниться в больничке
    84. {
    85. if(!IsAArmy(playerid))//если чувак не в армии
    86. {
    87. switch(random(4))//spawn больнички
    88. {
    89. case 0: SetSpawnInfoEx(playerid, skin, -1791.6775,-2010.7731,1501.1703,178.8611);
    90. case 1: SetSpawnInfoEx(playerid, skin, -1753.8512,-2017.1624,1501.1527,0.5960);
    91. case 2: SetSpawnInfoEx(playerid, skin, -1791.6775,-2010.7731,1501.3125,180.7411);
    92. case 3: SetSpawnInfoEx(playerid, skin, -1753.9198,-2010.6920,1501.1682,180.4044);
    93. }
    94. switch(PI[playerid][pCheepses])//spawn больнички
    95. {
    96. case 1:
    97. {
    98. f_TogglePlayerControllable(playerid, false);
    99. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    100. SetPlayerVirtualWorld(playerid, 1);
    101. SetPlayerInterior(playerid, 2);
    102. }
    103. case 2:
    104. {
    105. f_TogglePlayerControllable(playerid, false);
    106. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    107. SetPlayerVirtualWorld(playerid, 2);
    108. SetPlayerInterior(playerid, 3);
    109. }
    110. default:
    111. {
    112. f_TogglePlayerControllable(playerid, false);
    113. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    114. SetPlayerVirtualWorld(playerid, 3);
    115. SetPlayerInterior(playerid, 3);
    116. }
    117. }
    118. }
    119. if(PI[playerid][pHeal] > 0 && PI[playerid][pLevel] >= 20)
    120. {
    121. if(!IsAArmy(playerid))
    122. {
    123. switch(random(1))
    124. {
    125. case 0: SetSpawnInfoEx(playerid, skin, -1353.7018,8.3329,1601.0859,290.6552);
    126. }
    127. switch(PI[playerid][pCheepses])
    128. {
    129. case 1:
    130. {
    131. f_TogglePlayerControllable(playerid, false);
    132. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    133. SetPlayerVirtualWorld(playerid, 1);
    134. SetPlayerInterior(playerid, 2);
    135. }
    136. case 2:
    137. {
    138. f_TogglePlayerControllable(playerid, false);
    139. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    140. SetPlayerVirtualWorld(playerid, 2);
    141. SetPlayerInterior(playerid, 3);
    142. }
    143. default:
    144. {
    145. f_TogglePlayerControllable(playerid, false);
    146. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    147. SetPlayerVirtualWorld(playerid, 3);
    148. SetPlayerInterior(playerid, 3);
    149. }
    150. }
    151. }
    152. }
    153. else
    154. {
    155. if(GetTeamID(playerid) == TEAM_ARMY) SetSpawnInfoEx(playerid, skin, 661.4579,-1669.5214,871.2830,1.3154);//spawn армии.
    156. if(GetTeamID(playerid) == TEAM_ARMYLV) SetSpawnInfoEx(playerid, skin, 549.5598,1466.0801,1900.7980,353.8267);//spawn армии.
    157. if(GetTeamID(playerid) == TEAM_ARMYSF) SetSpawnInfoEx(playerid, skin, -1609.6104,-113.5421,1501.0859,179.3103);//spawn армии.
    158. SetPlayerVirtualWorld(playerid, 1);
    159. SetPlayerInterior(playerid, 2);
    160. return 1;
    161. }
    162. J_SetPlayerHealth(playerid,25);
    163. if(startlomka[playerid]==1)PI[playerid][pOldRepl]=0;
    164. return 1;
    165. }
    166. else//спавн дома
    167. { //СПАВНЫ ПО ЛВЛАМ
    168. if(PI[playerid][pDCTime]==0)
    169. {
    170. f_TogglePlayerControllable(playerid, false);
    171. SetTimerEx("UnFreez",5000, 0, "d", playerid);
    172. SetPlayerInterior(playerid, 0);
    173. SetPlayerVirtualWorld(playerid, 0);
    174. if(PI[playerid][pLevel] < 3 )
    175. {
    176. if(PI[playerid][pRace]==0)
    177. {
    178. switch(random(5))
    179. {
    180. case 0:SetSpawnInfoEx(playerid, skin, 1759.0187,-1885.4315,13.5558,178.4195);
    181. case 1:SetSpawnInfoEx(playerid, skin, 1765.3536,-1902.9863,13.5661,355.7444);
    182. case 2:SetSpawnInfoEx(playerid, skin, 1754.4703,-1902.8092,13.5634,270.8537);
    183. case 3:SetSpawnInfoEx(playerid, skin, 1754.3486,-1894.5731,13.5569,268.6604);
    184. }
    185. return 1;
    186. }
    187. else
    188. {
    189. SetSpawnInfoEx(playerid, skin, 2229.4236,-1156.9237,25.8201,39.4635);
    190. return 1;
    191. }
    192. }
    193. else if(PI[playerid][pLevel] >= 3 && PI[playerid][pLevel] <=4)
    194. {
    195. switch(random(2))
    196. {
    197. case 0:SetSpawnInfoEx(playerid, skin, -1975.1952,137.6538,27.6873,94.4402);
    198. case 1:SetSpawnInfoEx(playerid, skin, -1972.2318,122.2105,27.6873,5.4760);
    199. }
    200. return 1;
    201. }
    202. else if(PI[playerid][pLevel] >= 7 && PI[playerid][pLevel] <=19)
    203. {
    204. switch(random(4))
    205. {
    206. case 0:SetSpawnInfoEx(playerid, skin, 2859.1819,1259.2250,11.3906,331.3528);
    207. case 1:SetSpawnInfoEx(playerid, skin, 2859.4858,1284.0747,11.3906,201.6550);
    208. case 2:SetSpawnInfoEx(playerid, skin, 2858.7656,1320.1461,11.3906,223.5886);
    209. case 3:SetSpawnInfoEx(playerid, skin, 2848.8167,1293.3512,11.3906,99.5075);
    210. }
    211. return 1;
    212. }
    213. else if(PI[playerid][pLevel] >= 20)
    214. {
    215. SetSpawnInfoEx(playerid, skin, -71.1408,1223.8297,19.6863,119.4150);
    216. return 1;
    217. }
    218.  
    219. }
    220. if(PI[playerid][pDCTime] == 5)
    221. {
    222. if(pFam > 0)
    223. {
    224. if(FamilyInfo[pFam][fHouse] != -1)
    225. {
    226. TogglePlayerControllable(playerid,false);
    227. SetPlayerSkin(playerid, skin);
    228. J_SetPlayerPos(playerid, famHouse[FamilyInfo[pFam][fHouse]][famHouse_Exit_X]+5.0, famHouse[FamilyInfo[pFam][fHouse]][famHouse_Exit_Y], famHouse[FamilyInfo[pFam][fHouse]][famHouse_Exit_Z]);
    229. SetPlayerFacingAngle(playerid, 269.2998);
    230. SetPlayerInterior(playerid, famHouse[FamilyInfo[pFam][fHouse]][famHouse_INT]);
    231. SetPlayerVirtualWorld(playerid, (famHouse[FamilyInfo[pFam][fHouse]][famHouse_ID]+50));
    232. SetTimerEx("UnFreez",3000, false, "d", playerid);
    233. return true;
    234. }
    235. else
    236. {
    237. PI[playerid][pDCTime] = 0;
    238. CallLocalFunction("PlayerSpawn", "i", playerid);
    239. }
    240. }
    241. else
    242. {
    243. PI[playerid][pDCTime] = 0;
    244. CallLocalFunction("PlayerSpawn", "i", playerid);
    245. }
    246. }
    247. if(PI[playerid][pDCTime]==2 && PI[playerid][pHouseKey] != -1)//проверка выбора спавна и наличия ключей
    248. {
    249. if(GetString(HouseInfo[PI[playerid][pHouseKey]][hOwner],Name(playerid)))//проверка соответствия имени и
    250. {
    251. HouseEntered[playerid] = PI[playerid][pHouseKey];//отмечает в каком доме находиться чувак и отправляет его туда
    252. SetSpawnInfoEx(playerid, skin, HouseInfo[PI[playerid][pHouseKey]][hExit_X],HouseInfo[PI[playerid][pHouseKey]][hExit_Y],HouseInfo[PI[playerid][pHouseKey]][hExit_Z],0.0);
    253. //SetPlayerSkinEx(playerid, GetSkinOfPlayer(playerid));
    254. SetPlayerInterior(playerid,HouseInfo[PI[playerid][pHouseKey]][hInt]);
    255. SetPlayerVirtualWorld(playerid,PI[playerid][pHouseKey]+50);
    256. return 1;
    257. }
    258. else
    259. {
    260. new s = GetHouseStyle(PI[playerid][pHouseKey]);//тип дома
    261. for(new i;i < HouseRooms[s];i ++)// перебираеться количество комнат
    262. {
    263. if(GetString(HRoomOwner[PI[playerid][pHouseKey]][i],Name(playerid)))//возвращает комнаты
    264. {
    265. HouseEntered[playerid] = PI[playerid][pHouseKey];
    266. //SetSpawnInfoEx(playerid, skin, HouseInfo[PI[playerid][pHouseKey]][hExit_X],HouseInfo[PI[playerid][pHouseKey]][hExit_Y],HouseInfo[PI[playerid][pHouseKey]][hExit_Z],0.0);
    267. SetSpawnInfoEx(playerid, skin, HouseInfo[PI[playerid][pHouseKey]][hExit_X],HouseInfo[PI[playerid][pHouseKey]][hExit_Y],HouseInfo[PI[playerid][pHouseKey]][hExit_Z],0.0);
    268. //SetPlayerSkinEx(playerid, GetSkinOfPlayer(playerid));
    269. SetPlayerInterior(playerid,HouseInfo[PI[playerid][pHouseKey]][hInt]);
    270. SetPlayerVirtualWorld(playerid,PI[playerid][pHouseKey]+50);
    271. return 1;
    272. }
    273. }
    274. }
    275. }else if(PI[playerid][pDCTime]==3 && GetTeamID(playerid) != 0){//ниже если состоит в организации.
    276. J_SetPlayerFacingAngle(playerid,SpawnInfo[PI[playerid][pMember]][3]);
    277. SetPlayerInterior(playerid,SpawnIntWorld[PI[playerid][pMember]][0]);
    278. SetPlayerVirtualWorld(playerid,SpawnIntWorld[PI[playerid][pMember]][1]);
    279. SetSpawnInfoEx(playerid, skin, SpawnInfo[PI[playerid][pMember]][0], SpawnInfo[PI[playerid][pMember]][1], SpawnInfo[PI[playerid][pMember]][2], SpawnInfo[PI[playerid][pMember]][3]);
    280. return 1;
    281. }
    282. }
    283. SetSpawnInfoEx(playerid, skin, 167.5974,-109.2371,1.5501,272.6516);
    284. SetPlayerInterior(playerid, 0);
    285. SetPlayerVirtualWorld(playerid, 0);
    286. PI[playerid][pDCTime] = 0;
    287. //SetPlayerSkinEx(playerid, GetSkinOfPlayer(playerid));
    288. return 1;
    289. }
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •