⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 keys.cpp

📁 this keik game source
💻 CPP
📖 第 1 页 / 共 2 页
字号:
	};

PulsePart1::PulsePart1
	(
	)
	{
   ExecuteThread( "global/pulse_parts.scr::precache", true );
   setModel( "pulsepart1.def" );
	}

Item *PulsePart1::ItemPickup
   (
   Entity *other
   )

   {    
   if ( !level.no_jc )
      ExecuteThread( "global/pulse_parts.scr::blade_finds_piece1", true );
   gameVars.CreateVariable( "pulse1", 1 );
   if ( other->isClient() )
      {
      Player *player;
      ScriptVariable	*var1,*var2,*var3;

      var1 = gameVars.GetVariable( "pulse1" );
      var2 = gameVars.GetVariable( "pulse2" );
      var3 = gameVars.GetVariable( "pulse3" );

      if ( var1 && var2 && var3 )
         {
         player = ( Player * )other;
         player->giveWeapon( "PulseRifle" );
         player->FreeInventoryOfType( "PulsePart2" );
         player->FreeInventoryOfType( "PulsePart3" );
	      CancelEventsOfType( EV_Item_DropToFloor );
	      CancelEventsOfType( EV_Item_Respawn );
         CancelEventsOfType( EV_FadeOut );
         PostEvent( EV_Remove, 0 );
         return NULL;
         }
      }
   return Item::ItemPickup( other );
   }

class EXPORT_FROM_DLL PulsePart2 : public InventoryItem
	{
	public:
      CLASS_PROTOTYPE( PulsePart2 );
                     PulsePart2();
      virtual Item   *ItemPickup( Entity *other );
   };

CLASS_DECLARATION( InventoryItem, PulsePart2, "inventory_pulsepart2" )

ResponseDef PulsePart2::Responses[] =
	{
		{ NULL, NULL }
	};

PulsePart2::PulsePart2
	(
	)
	{
   ExecuteThread( "global/pulse_parts.scr::precache", true );
   setModel( "pulsepart2.def" );
	}

Item *PulsePart2::ItemPickup
   (
   Entity *other
   )

   {
   if ( !level.no_jc )
      ExecuteThread( "global/pulse_parts.scr::blade_finds_piece2", true );
   gameVars.CreateVariable( "pulse2", 1 );
   if ( other->isClient() )
      {
      Player *player;
      ScriptVariable	*var1,*var2,*var3;

      var1 = gameVars.GetVariable( "pulse1" );
      var2 = gameVars.GetVariable( "pulse2" );
      var3 = gameVars.GetVariable( "pulse3" );

      if ( var1 && var2 && var3 )
         {
         player = ( Player * )other;
         player->giveWeapon( "PulseRifle" );
         player->FreeInventoryOfType( "PulsePart1" );
         player->FreeInventoryOfType( "PulsePart3" );
	      CancelEventsOfType( EV_Item_DropToFloor );
	      CancelEventsOfType( EV_Item_Respawn );
         CancelEventsOfType( EV_FadeOut );
         PostEvent( EV_Remove, 0 );
         return NULL;
         }
      }
   return Item::ItemPickup( other );
   }

class EXPORT_FROM_DLL PulsePart3 : public InventoryItem
	{
	public:
      CLASS_PROTOTYPE( PulsePart3 );
                     PulsePart3();
      virtual Item   *ItemPickup( Entity *other );
   };

CLASS_DECLARATION( InventoryItem, PulsePart3, "inventory_pulsepart3" )

ResponseDef PulsePart3::Responses[] =
	{
		{ NULL, NULL }
	};

PulsePart3::PulsePart3
	(
	)
	{
   ExecuteThread( "global/pulse_parts.scr::precache", true );
   setModel( "pulsepart3.def" );
	}

Item *PulsePart3::ItemPickup
   (
   Entity *other
   )

   {
   if ( !level.no_jc )
      ExecuteThread( "global/pulse_parts.scr::blade_finds_piece3", true );
   gameVars.CreateVariable( "pulse3", 1 );
   if ( other->isClient() )
      {
      Player *player;
      ScriptVariable	*var1,*var2,*var3;

      var1 = gameVars.GetVariable( "pulse1" );
      var2 = gameVars.GetVariable( "pulse2" );
      var3 = gameVars.GetVariable( "pulse3" );

      if ( var1 && var2 && var3 )
         {
         player = ( Player * )other;
         player->giveWeapon( "PulseRifle" );
         player->FreeInventoryOfType( "PulsePart1" );
         player->FreeInventoryOfType( "PulsePart2" );
	      CancelEventsOfType( EV_Item_DropToFloor );
	      CancelEventsOfType( EV_Item_Respawn );
         CancelEventsOfType( EV_FadeOut );
         PostEvent( EV_Remove, 0 );
         return NULL;
         }
      }
   return Item::ItemPickup( other );
   }

class EXPORT_FROM_DLL Chemsuit : public InventoryItem
	{
	public:
      CLASS_PROTOTYPE( Chemsuit );
                  Chemsuit();
   };

CLASS_DECLARATION( InventoryItem, Chemsuit, "inventory_chembiosuit" )

ResponseDef Chemsuit::Responses[] =
	{
		{ NULL, NULL }
	};

Chemsuit::Chemsuit
	(
	)
	{
   setModel( "chemsuit.def" );
	}

class EXPORT_FROM_DLL Blueprints : public InventoryItem
	{
	public:
      CLASS_PROTOTYPE( Blueprints );
                  Blueprints();
   };

CLASS_DECLARATION( InventoryItem, Blueprints, "inventory_blueprints" )

ResponseDef Blueprints::Responses[] =
	{
		{ NULL, NULL }
	};

Blueprints::Blueprints
	(
	)
	{
   setModel( "blueprints.def" );
	}

class EXPORT_FROM_DLL U4Sample : public InventoryItem
	{
	public:
      CLASS_PROTOTYPE( U4Sample );
                  U4Sample();
   };

CLASS_DECLARATION( InventoryItem, U4Sample, "inventory_u4sample" )

ResponseDef U4Sample::Responses[] =
	{
		{ NULL, NULL }
	};

U4Sample::U4Sample
	(
	)
	{
   setModel( "u4_sample.def" );
	}

class EXPORT_FROM_DLL Envelope : public InventoryItem
	{
	public:
      CLASS_PROTOTYPE( Envelope );
                  Envelope();
   };

CLASS_DECLARATION( InventoryItem, Envelope, "inventory_envelope" )

ResponseDef Envelope::Responses[] =
	{
		{ NULL, NULL }
	};

Envelope::Envelope
	(
	)
	{
   setModel( "envelope.def" );
	}

class EXPORT_FROM_DLL CandyBar : public InventoryItem
	{
	public:
      CLASS_PROTOTYPE( CandyBar );
                  CandyBar();
   };

CLASS_DECLARATION( InventoryItem, CandyBar, "inventory_candybar" )

ResponseDef CandyBar::Responses[] =
	{
		{ NULL, NULL }
	};

CandyBar::CandyBar
	(
	)
	{
   setModel( "CandyBar.def" );
	}

class EXPORT_FROM_DLL PassCode : public InventoryItem
	{
	public:
      CLASS_PROTOTYPE( PassCode );
                  PassCode();
   };

CLASS_DECLARATION( InventoryItem, PassCode, "inventory_passcode" )

ResponseDef PassCode::Responses[] =
	{
		{ NULL, NULL }
	};

PassCode::PassCode
	(
	)
	{
   setModel( "password.def" );
	}

class EXPORT_FROM_DLL PassCode2 : public InventoryItem
	{
	public:
      CLASS_PROTOTYPE( PassCode2 );
                  PassCode2();
   };

CLASS_DECLARATION( InventoryItem, PassCode2, "inventory_passcode2" )

ResponseDef PassCode2::Responses[] =
	{
		{ NULL, NULL }
	};

PassCode2::PassCode2
	(
	)
	{
   setModel( "password2.def" );
	}

class EXPORT_FROM_DLL Hand : public InventoryItem
	{
	public:
      CLASS_PROTOTYPE( Hand );
                  Hand();
   };

CLASS_DECLARATION( InventoryItem, Hand, "inventory_hand" )

ResponseDef Hand::Responses[] =
	{
		{ NULL, NULL }
	};

Hand::Hand
	(
	)
	{
   setModel( "hand.def" );
	}



/*SINED inventory_genericpulsepart (.3 1 .3) (-8 -8 0) (8 8 16) NOT_SOLID NOT_DAMAGABLE
Pulse Weapon Part - Will always spawn as the next piece that the user needs
to complete the weapon.  When the user picks up 3 of these, they will get the PulseRifle
*/

class EXPORT_FROM_DLL GenericPulsePart : public InventoryItem
	{
   
   public:
      CLASS_PROTOTYPE( GenericPulsePart );
                  GenericPulsePart();
   };

CLASS_DECLARATION( InventoryItem, GenericPulsePart, "inventory_genericpulsepart" )

ResponseDef GenericPulsePart::Responses[] =
	{
		{ NULL, NULL }
	};

GenericPulsePart::GenericPulsePart
	(
	)
	{
   ScriptVariable	*var1,*var2,*var3;

   var1 = gameVars.GetVariable( "pulse1" );
   var2 = gameVars.GetVariable( "pulse2" );
   var3 = gameVars.GetVariable( "pulse3" );

   // Based on what pulserifle pieces that have already been found,
   // spawn the correct model in the game.

   if ( !var1 )
      {
      PulsePart1 *part1;

      part1 = new PulsePart1;
      part1->setModel( "pulsepart1.def" );
      part1->setOrigin( origin );
      part1->worldorigin.copyTo(part1->edict->s.old_origin);
      }
   else if ( !var2 )
      {
      PulsePart2 *part2;

      part2 = new PulsePart2;
      part2->setModel( "pulsepart2.def" );
      part2->setOrigin( origin );
      part2->worldorigin.copyTo(part2->edict->s.old_origin);
      }
   else if ( !var3 )
      {
      PulsePart3 *part3;

      part3 = new PulsePart3;
      part3->setModel( "pulsepart3.def" );
      part3->setOrigin( origin );
      part3->worldorigin.copyTo(part3->edict->s.old_origin);
      }

   PostEvent( EV_Remove, 0 );
   }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -