Guest User

JobCreate

a guest
Apr 6th, 2010
516
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.11 KB | None | 0 0
  1. /*
  2.  
  3. SLOVAK JOBS SCRIPT
  4.  
  5. Made by Denis "art]_KiLlMaN" Granec in 2010
  6. All rights reserved (c)
  7.  
  8. Have easy scripting :D !
  9.  
  10. */
  11. #if defined _JobCreate_included
  12. #endinput
  13. #endif
  14.  
  15. #define _JobCreate_included
  16. #pragma library JobCreate
  17.  
  18.  
  19.  
  20. #include <a_samp>
  21.  
  22. #define MAX_JOBS 50
  23. #define MAX_NAME 20
  24. #define pickup 1275
  25. #pragma tabsize 0
  26.  
  27. enum JOB_INFO
  28. {
  29. name[MAX_NAME],
  30. Float:xx,
  31. Float:yy,
  32. Float:zz,
  33. color,
  34. job_skin1,
  35. job_skin2,
  36. job_skin3,
  37. job_skin4,
  38. job_skin5,
  39. job_weapon1,
  40. job_weapon_ammo1,
  41. job_weapon2,
  42. job_weapon_ammo2,
  43. job_weapon3,
  44. job_weapon_ammo3,
  45. jobid
  46. };
  47. new JobInfo[MAX_JOBS][JOB_INFO];
  48.  
  49. new JobsCount = 0;
  50. new Job[MAX_PLAYERS];
  51. //-------------------------------------------|
  52. forward CreateJob(const job_name[],id,Float:xxx,Float:yyy,Float:zzz,colors,jskin1,jskin2,jskin3,jskin4,jskin5,jw1,jw1ammo,jw2,jw2ammo,jw3, jw3ammo);
  53. forward Job_OnPlayerPickUpPickup(playerid);
  54. forward Job_OnPlayerKeyStateChange(playerid, newkeys);
  55. //______________________________________________________________________________
  56.  
  57. public CreateJob(const job_name[],id,Float:xxx,Float:yyy,Float:zzz,colors,jskin1,jskin2,jskin3,jskin4,jskin5,jw1,jw1ammo,jw2,jw2ammo,jw3, jw3ammo)
  58. {
  59. if(JobsCount < MAX_JOBS){
  60.  
  61. format(JobInfo[JobsCount][name], MAX_NAME, "%s", job_name);
  62. JobInfo[JobsCount][xx] = xxx;
  63. JobInfo[JobsCount][yy] = yyy;
  64. JobInfo[JobsCount][zz] = zzz;
  65. JobInfo[JobsCount][color] = colors;
  66. JobInfo[JobsCount][job_skin1] = jskin1;
  67. JobInfo[JobsCount][job_skin2] = jskin2;
  68. JobInfo[JobsCount][job_skin3] = jskin3;
  69. JobInfo[JobsCount][job_skin4] = jskin4;
  70. JobInfo[JobsCount][job_skin5] = jskin5;
  71. JobInfo[JobsCount][job_weapon1] = jw1;
  72. JobInfo[JobsCount][job_weapon2] = jw2;
  73. JobInfo[JobsCount][job_weapon3] = jw3;
  74. JobInfo[JobsCount][job_weapon_ammo1] = jw1ammo;
  75. JobInfo[JobsCount][job_weapon_ammo2] = jw2ammo;
  76. JobInfo[JobsCount][job_weapon_ammo3] = jw3ammo;
  77. JobInfo[JobsCount][jobid] = id;
  78. CreatePickup(pickup,1,xxx,yyy,zzz);
  79. JobsCount++;
  80. //-----------------------------|
  81. } else {
  82. print("++++++++++++++++++++++++++++");
  83. print("Occupational limit exceeded!!");
  84. print("Game Mod was turned off !!");
  85. print("++++++++++++++++++++++++++++");
  86. SendRconCommand("exit");
  87. }
  88. return 1;
  89. }
  90.  
  91. //==============================================================================
  92.  
  93. //==============================================================================
  94.  
  95. public Job_OnPlayerPickUpPickup(playerid)
  96. {
  97. for(new j=0; j< JobsCount; j++){
  98. if(IsPlayerConnected(playerid)){
  99. if(IsPlayerInRangeOfPoint(playerid, 2, JobInfo[j][xx], JobInfo[j][yy], JobInfo[j][zz]) == 1){
  100. if(Job[playerid] == JobInfo[j][jobid]) return SendClientMessage(playerid, 0xFFFFFFFF, "skin changes press L.ALT!");
  101. //---------------------|
  102. new string[100];
  103. format(string, sizeof(string),"%s Sign in to profession Press button L.ALT.",JobInfo[j][name]);
  104. SendClientMessage(playerid, 0xFFAA00FF, string);
  105. //---------------------|
  106. }
  107. }
  108. }
  109. return 1;
  110. }
  111. //==============================================================================
  112.  
  113. public Job_OnPlayerKeyStateChange(playerid, newkeys)
  114. {
  115. for(new j=0; j< JobsCount; j++){
  116. if(IsPlayerConnected(playerid)){
  117. if(IsPlayerInRangeOfPoint(playerid, 2, JobInfo[j][xx], JobInfo[j][yy], JobInfo[j][zz]) == 1){
  118. if(newkeys == KEY_WALK)
  119. {
  120. //--------------------------------------|
  121. if(Job[playerid] != JobInfo[j][jobid]){
  122. new string[150];
  123. format(string, sizeof(string),"button to enter employment %s !push the button to L.ALT and change the skin. ",JobInfo[j][name]);
  124. SendClientMessage(playerid, 0xFFAA00FF, string);
  125. Job[playerid] = JobInfo[j][jobid];
  126.  
  127. GivePlayerWeapon(playerid, JobInfo[j][job_weapon1] ,JobInfo[j][job_weapon_ammo1]);
  128. GivePlayerWeapon(playerid, JobInfo[j][job_weapon2] ,JobInfo[j][job_weapon_ammo2]);
  129. GivePlayerWeapon(playerid, JobInfo[j][job_weapon3] ,JobInfo[j][job_weapon_ammo3]);
  130. SetPlayerColor(playerid,JobInfo[j][color]);
  131. } else {
  132. new randomskin;
  133. randomskin = random(5);
  134. switch(randomskin)
  135. {
  136. case 0: SetPlayerSkin(playerid, JobInfo[j][job_skin1]);
  137. case 1: SetPlayerSkin(playerid, JobInfo[j][job_skin2]);
  138. case 2: SetPlayerSkin(playerid, JobInfo[j][job_skin3]);
  139. case 3: SetPlayerSkin(playerid, JobInfo[j][job_skin4]);
  140. default: SetPlayerSkin(playerid, JobInfo[j][job_skin5]);
  141. }
  142. }}}}}
  143. //--------------------------------------|
  144. return 1;
  145. }
  146. /*
  147. native JobCreate(const job_name[],Float:xx,Float:yy,Float:zz,jcost,jskin1,jskin2,jskin3,jw1,jw1ammo,jw2,jw2ammo,jw3, jw3ammo);
  148. native Job_OnPlayerPickUpPickup(playerid);
  149. native Job_OnPlayerKeyStateChange(playerid, newkeys);
  150. */
Advertisement
Add Comment
Please, Sign In to add comment