Guest User

MX_Master

a guest
May 31st, 2009
602
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.26 KB | None | 0 0
  1. /*
  2.     Example of game mode with Dynamic Menus (dynMenus)
  3.     by MX_Master
  4. */
  5.  
  6. #include <a_samp>
  7. #include "dynMenus.inc.pwn" // Dynamic Menus include file
  8.  
  9.  
  10.  
  11.  
  12. stock
  13.     burgerPickup, // burger pickup ID
  14.     minigunPickup, // minigun pickup ID
  15.     bribePickup[3]; // bribe pickup IDs
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27. main()
  28. {
  29. }
  30.  
  31.  
  32.  
  33.  
  34. public OnGameModeInit()
  35. {
  36.     // set game mode name
  37.     SetGameModeText("GM with Dynamic Menus");
  38.  
  39.  
  40.     // (?) all players/pickups spawns will be on helicopter ground near VINEWOOD hills
  41.  
  42.     // add player classes
  43.     AddPlayerClass( 0, 1294.2275, -771.0459, 95.9613, 180.3045, 0,0, 0,0, 0,0 ); // add 1 class (CJ) with no weapons
  44.  
  45.  
  46.     // create static pickups
  47.     burgerPickup = CreatePickup( 2880, 23, 1298.8322, -778.2342, 96.4609 ); // create burger pickup
  48.     minigunPickup = CreatePickup( 362, 23, 1302.2224, -782.2265, 96.4554 ); // create minigun pickup
  49.  
  50.     bribePickup[0] = CreatePickup( 1247, 23, 1303.6896, -790.7296, 96.4554 ); // create bribe pickup
  51.     bribePickup[1] = CreatePickup( 1247, 23, 1299.7059, -796.9263, 96.4609 ); // ..
  52.     bribePickup[2] = CreatePickup( 1247, 23, 1293.0023, -800.16, 96.4609 );
  53.  
  54.  
  55.     return 1;
  56. }
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68. public OnPlayerConnect ( playerid )
  69. {
  70.     // change player spawn position
  71.     SetSpawnInfo( playerid, 0, 0, 1294.2275, -771.0459, 95.9613, 180.3045, 0,0, 0,0, 0,0 );
  72.  
  73.  
  74.     // reset player weapons and give $123 to player
  75.     ResetPlayerMoney(playerid);
  76.     ResetPlayerWeapons(playerid);
  77.     GivePlayerMoney( playerid, 123 );
  78.  
  79.  
  80.     // clear 10 string of chat
  81.     for ( new s = 0; s < 10; s++ )
  82.         SendClientMessage( playerid, 0xF5DEB3AA, " " );
  83.  
  84.     // show script info for player in chat
  85.     SendClientMessage( playerid, 0xFFFF00AA, " � It's example game mode with Dynamic Menus (dynMenus) by MX_Master" );
  86.     SendClientMessage( playerid, 0xF5DEB3AA, " " );
  87.     SendClientMessage( playerid, 0xF5DEB3AA, " � Bribe pickups just give you 1 point (score +1) and $1000" );
  88.     SendClientMessage( playerid, 0xF5DEB3AA, " � Burger pickup shows static eat menu, if you want to eat" );
  89.     SendClientMessage( playerid, 0xF5DEB3AA, " � Minigun pickup shows dynamic weapons menu, if you want to buy some weapons" );
  90.     SendClientMessage( playerid, 0x339966AA, "   (!) you must have at list 5 score points to buy armours" );
  91.     SendClientMessage( playerid, 0x339966AA, "   (!) you must have at list 10 score points to buy thrown weapons" );
  92.     SendClientMessage( playerid, 0x339966AA, "   (!) you must have at list 20 score points to buy heavy weapons" );
  93.     SendClientMessage( playerid, 0x339966AA, "   (!) you must be an RCON admin to buy minigun in heavy weapons menu" );
  94.  
  95.  
  96.     return 1;
  97. }
  98.  
  99.  
  100.  
  101.  
  102. public OnPlayerRequestClass ( playerid, classid )
  103. {
  104.     // just spawn player when he connected to server
  105.     SpawnPlayer(playerid);
  106.  
  107.     return 1;
  108. }
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120. public OnPlayerPickUpPickup ( playerid, pickupid )
  121. {
  122.     // search for picked pickup ID
  123.     if
  124.     (
  125.         pickupid == burgerPickup && // if player picked up a burger pickup
  126.         playerMenu[playerid][menuClass] == NO_MENU // and he not in menu
  127.     )
  128.     {
  129.         showMenuForPlayer( playerid, menuClassEat, menuEatMain ); // show FOOD main menu for player
  130.     }
  131.     else if
  132.     (
  133.         pickupid == minigunPickup && // if player picked up a minigun pickup
  134.         playerMenu[playerid][menuClass] == NO_MENU // and he not in menu
  135.     )
  136.     {
  137.         showMenuForPlayer( playerid, menuClassAmmu, menuAmmuMain ); // show WEAPONS main menu for player
  138.     }
  139.     else if
  140.     (
  141.         pickupid == bribePickup[0] || // if player picked up one of bribe pickups
  142.         pickupid == bribePickup[1] ||
  143.         pickupid == bribePickup[2]
  144.     )
  145.     {
  146.         PlayerPlaySound( playerid, 1057, 0.0, 0.0, 0.0 ); // play fast sound for player
  147.         GameTextForPlayer( playerid, "~y~~h~score ~b~~h~+1~n~~g~~h~money ~b~~h~+1000~n~ ", 1000, 5 ); // show fast info
  148.  
  149.         SetPlayerScore( playerid, GetPlayerScore(playerid) + 1 ); // player's score +1
  150.         GivePlayerMoney( playerid, 1000 ); // player's money + $1000
  151.     }
  152.  
  153.  
  154.     return 1;
  155. }
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167. public OnPlayerSelectedMenuRow ( playerid, row )
  168. {
  169.     onPlayerSelectedMenuRow( playerid, row ); // this function always must be in this callback
  170.  
  171.     // (!) do not place here nothing more
  172.  
  173.     return 1;
  174. }
  175.  
  176. public OnPlayerExitedMenu ( playerid )
  177. {
  178.     onPlayerExitedMenu(playerid); // this function always must be in this callback
  179.  
  180.     // (!) do not place here nothing more
  181.  
  182.     return 1;
  183. }
  184.  
Advertisement
Add Comment
Please, Sign In to add comment