您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ walkmonster_start函数代码示例

51自学网 2021-06-03 09:51:53
  C++
这篇教程C++ walkmonster_start函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中walkmonster_start函数的典型用法代码示例。如果您正苦于以下问题:C++ walkmonster_start函数的具体用法?C++ walkmonster_start怎么用?C++ walkmonster_start使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了walkmonster_start函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: SP_monster_makron

/*QUAKED monster_makron (1 .5 0) (-30 -30 0) (30 30 90) Ambush Trigger_Spawn Sight*/void SP_monster_makron (edict_t *self){	MakronPrecache ();	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->s.modelindex = gi.modelindex ("models/monsters/boss3/rider/tris.md2");	VectorSet (self->mins, -30, -30, 0);	VectorSet (self->maxs, 30, 30, 90);	self->mass = 500;	if (deathmatch->value)		self->health = 1700 + 490 * skill->value;	else		self->health = 2500 + 360 * skill->value;	self->max_health = self->health;	self->monsterinfo.level = 3450 + 2670 * skill->value;	self->monsterinfo.skill = skill->value;	self->gib_health = -300 - 30 * skill->value;	strcpy(self->monsterinfo.name, "Makron");	self->pain = makron_pain;	self->die = makron_die;	self->monsterinfo.stand = makron_stand;	self->monsterinfo.walk = makron_walk;	self->monsterinfo.run = makron_run;	self->monsterinfo.dodge = NULL;	self->monsterinfo.attack = makron_attack;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = makron_sight;	self->monsterinfo.checkattack = Makron_CheckAttack;	self->monsterinfo.cts_any = 1;	self->monsterinfo.cts_class1 = 0.20;	self->monsterinfo.cts_class2 = 0.40;	self->monsterinfo.cts_class3 = 0.70;	self->monsterinfo.item_any = 0.95;	self->monsterinfo.itemmult_class1 = 2.0;	self->monsterinfo.itemmult_class2 = 0.9;	self->monsterinfo.itemmult_class3 = 0.7;	self->monsterinfo.itemmult_class4 = 0.5;	self->monsterinfo.aggressive = false;	self->monsterinfo.prefered_range = 250;	gi.linkentity (self);//	self->monsterinfo.currentmove = &makron_move_stand;	self->monsterinfo.currentmove = &makron_move_sight;	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start(self);}
开发者ID:Chromozon,项目名称:Quake2_Giex-G10,代码行数:56,


示例2: SP_monster_jorg

/*QUAKED monster_jorg (1 .5 0) (-80 -80 0) (90 90 140) Ambush Trigger_Spawn Sight*/void SP_monster_jorg (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}	sound_pain1 = gi.soundindex ("boss3/bs3pain1.wav");	sound_pain2 = gi.soundindex ("boss3/bs3pain2.wav");	sound_pain3 = gi.soundindex ("boss3/bs3pain3.wav");	sound_death = gi.soundindex ("boss3/bs3deth1.wav");	sound_attack1 = gi.soundindex ("boss3/bs3atck1.wav");	sound_attack2 = gi.soundindex ("boss3/bs3atck2.wav");	sound_search1 = gi.soundindex ("boss3/bs3srch1.wav");	sound_search2 = gi.soundindex ("boss3/bs3srch2.wav");	sound_search3 = gi.soundindex ("boss3/bs3srch3.wav");	sound_idle = gi.soundindex ("boss3/bs3idle1.wav");	sound_step_left = gi.soundindex ("boss3/step1.wav");	sound_step_right = gi.soundindex ("boss3/step2.wav");	sound_firegun = gi.soundindex ("boss3/xfire.wav");	sound_death_hit = gi.soundindex ("boss3/d_hit.wav");	MakronPrecache ();	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->s.modelindex = gi.modelindex ("models/monsters/boss3/rider/tris.md2");	self->s.modelindex2 = gi.modelindex ("models/monsters/boss3/jorg/tris.md2");	VectorSet (self->mins, -80, -80, 0);	VectorSet (self->maxs, 80, 80, 140);	self->health = 3000;	self->gib_health = -2000;	self->mass = 1000;	self->pain = jorg_pain;	self->die = jorg_die;	self->monsterinfo.stand = jorg_stand;	self->monsterinfo.walk = jorg_walk;	self->monsterinfo.run = jorg_run;	self->monsterinfo.dodge = NULL;	self->monsterinfo.attack = jorg_attack;	self->monsterinfo.search = jorg_search;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = NULL;	self->monsterinfo.checkattack = Jorg_CheckAttack;	gi.linkentity (self);		self->monsterinfo.currentmove = &jorg_move_stand;	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start(self);}
开发者ID:MaddTheSane,项目名称:Quake2,代码行数:56,


示例3: SP_misc_actor

void SP_misc_actor (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}	if (!self->targetname)	{		gi.dprintf(DEVELOPER_MSG_GAME, "untargeted %s at %s/n", self->classname, vtos(self->s.origin));		G_FreeEdict (self);		return;	}	if (!self->target)	{		gi.dprintf(DEVELOPER_MSG_GAME, "%s with no target at %s/n", self->classname, vtos(self->s.origin));		G_FreeEdict (self);		return;	}	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->s.modelindex = gi.modelindex("players/male/tris.md2");	VectorSet (self->mins, -16, -16, -24);	VectorSet (self->maxs, 16, 16, 32);	if (!self->health)		self->health = 100;	self->mass = 200;	self->pain = actor_pain;	self->die = actor_die;	self->monsterinfo.stand = actor_stand;	self->monsterinfo.walk = actor_walk;	self->monsterinfo.run = actor_run;	self->monsterinfo.attack = actor_attack;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = NULL;	self->monsterinfo.aiflags |= AI_GOOD_GUY;	gi.linkentity (self);	self->monsterinfo.currentmove = &actor_move_stand;	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start (self);	// actors always start in a dormant state, they *must* be used to get going	self->use = actor_use;}
开发者ID:basecq,项目名称:q2dos,代码行数:54,


示例4: SP_monster_brain

/*QUAKED monster_brain(1 .5 0)(-16 -16 -24)(16 16 32) Ambush Trigger_Spawn Sight*/void SP_monster_brain(edict_t *self){	if(deathmatch->value){		G_FreeEdict(self);		return;	}		sound_chest_open = gi.soundindex("brain/brnatck1.wav");	sound_tentacles_extend = gi.soundindex("brain/brnatck2.wav");	sound_tentacles_retract = gi.soundindex("brain/brnatck3.wav");	sound_death = gi.soundindex("brain/brndeth1.wav");	sound_idle1 = gi.soundindex("brain/brnidle1.wav");	sound_idle2 = gi.soundindex("brain/brnidle2.wav");	sound_idle3 = gi.soundindex("brain/brnlens1.wav");	sound_pain1 = gi.soundindex("brain/brnpain1.wav");	sound_pain2 = gi.soundindex("brain/brnpain2.wav");	sound_sight = gi.soundindex("brain/brnsght1.wav");	sound_search = gi.soundindex("brain/brnsrch1.wav");	sound_melee1 = gi.soundindex("brain/melee1.wav");	sound_melee2 = gi.soundindex("brain/melee2.wav");	sound_melee3 = gi.soundindex("brain/melee3.wav");		self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->s.modelindex = gi.modelindex("models/monsters/brain/tris.md2");	VectorSet(self->mins, -16, -16, -24);	VectorSet(self->maxs, 16, 16, 32);		self->health = 300;	self->gib_health = -150;	self->mass = 400;		self->pain = brain_pain;	self->die = brain_die;		self->monsterinfo.stand = brain_stand;	self->monsterinfo.walk = brain_walk;	self->monsterinfo.run = brain_run;	self->monsterinfo.dodge = brain_dodge;	//	self->monsterinfo.attack = brain_attack;	self->monsterinfo.melee = brain_melee;	self->monsterinfo.sight = brain_sight;	self->monsterinfo.search = brain_search;	self->monsterinfo.idle = brain_idle;		self->monsterinfo.power_armor_type = POWER_ARMOR_SCREEN;	self->monsterinfo.power_armor_power = 100;		gi.linkentity(self);		self->monsterinfo.currentmove = &brain_move_stand;	self->monsterinfo.scale = MODEL_SCALE;		walkmonster_start(self);}
开发者ID:luaman,项目名称:qforge-2,代码行数:56,


示例5: SP_monster_gladb

/* * QUAKED monster_gladb (1 .5 0) (-32 -32 -24) (32 32 64) Ambush Trigger_Spawn Sight */voidSP_monster_gladb(edict_t *self){    if (deathmatch->value)    {        G_FreeEdict(self);        return;    }    sound_pain1 = gi.soundindex("gladiator/pain.wav");    sound_pain2 = gi.soundindex("gladiator/gldpain2.wav");    sound_die = gi.soundindex("gladiator/glddeth2.wav");    sound_gun = gi.soundindex("weapons/plasshot.wav");    sound_cleaver_swing = gi.soundindex("gladiator/melee1.wav");    sound_cleaver_hit = gi.soundindex("gladiator/melee2.wav");    sound_cleaver_miss = gi.soundindex("gladiator/melee3.wav");    sound_idle = gi.soundindex("gladiator/gldidle1.wav");    sound_search = gi.soundindex("gladiator/gldsrch1.wav");    sound_sight = gi.soundindex("gladiator/sight.wav");    self->movetype = MOVETYPE_STEP;    self->solid = SOLID_BBOX;    self->s.modelindex = gi.modelindex("models/monsters/gladb/tris.md2");    VectorSet(self->mins, -32, -32, -24);    VectorSet(self->maxs, 32, 32, 64);    self->health = 800;    self->gib_health = -175;    self->mass = 350;    self->pain = gladb_pain;    self->die = gladb_die;    self->monsterinfo.stand = gladb_stand;    self->monsterinfo.walk = gladb_walk;    self->monsterinfo.run = gladb_run;    self->monsterinfo.dodge = NULL;    self->monsterinfo.attack = gladb_attack;    self->monsterinfo.melee = gladb_melee;    self->monsterinfo.sight = gladb_sight;    self->monsterinfo.idle = gladb_idle;    self->monsterinfo.search = gladb_search;    gi.linkentity(self);    self->monsterinfo.currentmove = &gladb_move_stand;    self->monsterinfo.scale = MODEL_SCALE;    self->monsterinfo.power_armor_type = POWER_ARMOR_SHIELD;    self->monsterinfo.power_armor_power = 400;    walkmonster_start(self);}
开发者ID:yquake2,项目名称:xatrix,代码行数:56,


示例6: SP_monster_mutant

/*QUAKED monster_mutant (1 .5 0) (-32 -32 -24) (32 32 32) Ambush Trigger_Spawn Sight*/void SP_monster_mutant (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}	sound_swing = gi.soundindex ("mutant/mutatck1.wav");	sound_hit = gi.soundindex ("mutant/mutatck2.wav");	sound_hit2 = gi.soundindex ("mutant/mutatck3.wav");	sound_death = gi.soundindex ("mutant/mutdeth1.wav");	sound_idle = gi.soundindex ("mutant/mutidle1.wav");	sound_pain1 = gi.soundindex ("mutant/mutpain1.wav");	sound_pain2 = gi.soundindex ("mutant/mutpain2.wav");	sound_sight = gi.soundindex ("mutant/mutsght1.wav");	sound_search = gi.soundindex ("mutant/mutsrch1.wav");	sound_step1 = gi.soundindex ("mutant/step1.wav");	sound_step2 = gi.soundindex ("mutant/step2.wav");	sound_step3 = gi.soundindex ("mutant/step3.wav");	sound_thud = gi.soundindex ("mutant/thud1.wav");		self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->s.modelindex = gi.modelindex ("models/monsters/mutant/tris.md2");	VectorSet (self->mins, -32, -32, -24);	VectorSet (self->maxs, 32, 32, 48);	self->health = 300;	self->gib_health = -120;	self->mass = 300;	self->pain = mutant_pain;	self->die = mutant_die;	self->monsterinfo.stand = mutant_stand;	self->monsterinfo.walk = mutant_walk;	self->monsterinfo.run = mutant_run;	self->monsterinfo.dodge = NULL;	self->monsterinfo.attack = mutant_jump;	self->monsterinfo.melee = mutant_melee;	self->monsterinfo.sight = mutant_sight;	self->monsterinfo.search = mutant_search;	self->monsterinfo.idle = mutant_idle;	self->monsterinfo.checkattack = mutant_checkattack;	gi.linkentity (self);		self->monsterinfo.currentmove = &mutant_move_stand;	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start (self);}
开发者ID:Slipyx,项目名称:r1q2,代码行数:55,


示例7: SP_monster_parasite

/* * QUAKED monster_parasite (1 .5 0) (-16 -16 -24) (16 16 32) Ambush Trigger_Spawn Sight */voidSP_monster_parasite(edict_t *self){  	if (!self)	{		return;	}	if (deathmatch->value)	{		G_FreeEdict(self);		return;	}	sound_pain1 = gi.soundindex("parasite/parpain1.wav");	sound_pain2 = gi.soundindex("parasite/parpain2.wav");	sound_die = gi.soundindex("parasite/pardeth1.wav");	sound_launch = gi.soundindex("parasite/paratck1.wav");	sound_impact = gi.soundindex("parasite/paratck2.wav");	sound_suck = gi.soundindex("parasite/paratck3.wav");	sound_reelin = gi.soundindex("parasite/paratck4.wav");	sound_sight = gi.soundindex("parasite/parsght1.wav");	sound_tap = gi.soundindex("parasite/paridle1.wav");	sound_scratch = gi.soundindex("parasite/paridle2.wav");	sound_search = gi.soundindex("parasite/parsrch1.wav");	self->s.modelindex = gi.modelindex("models/monsters/parasite/tris.md2");	VectorSet(self->mins, -16, -16, -24);	VectorSet(self->maxs, 16, 16, 24);	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->health = 175;	self->gib_health = -50;	self->mass = 250;	self->pain = parasite_pain;	self->die = parasite_die;	self->monsterinfo.stand = parasite_stand;	self->monsterinfo.walk = parasite_start_walk;	self->monsterinfo.run = parasite_start_run;	self->monsterinfo.attack = parasite_attack;	self->monsterinfo.sight = parasite_sight;	self->monsterinfo.idle = parasite_idle;	gi.linkentity(self);	self->monsterinfo.currentmove = &parasite_move_stand;	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start(self);}
开发者ID:phine4s,项目名称:xatrix,代码行数:56,


示例8: SP_monster_medic

/*QUAKED monster_medic (1 .5 0) (-16 -16 -24) (16 16 32) Ambush Trigger_Spawn Sight*/void SP_monster_medic (edict_t *self){  if (deathmatch->value)  {    G_FreeEdict (self);    return;  }  sound_idle1 = gi.soundindex ("medic/idle.wav");  sound_pain1 = gi.soundindex ("medic/medpain1.wav");  sound_pain2 = gi.soundindex ("medic/medpain2.wav");  sound_die = gi.soundindex ("medic/meddeth1.wav");  sound_sight = gi.soundindex ("medic/medsght1.wav");  sound_search = gi.soundindex ("medic/medsrch1.wav");  sound_hook_launch = gi.soundindex ("medic/medatck2.wav");  sound_hook_hit = gi.soundindex ("medic/medatck3.wav");  sound_hook_heal = gi.soundindex ("medic/medatck4.wav");  sound_hook_retract = gi.soundindex ("medic/medatck5.wav");  gi.soundindex ("medic/medatck1.wav");  self->movetype = MOVETYPE_STEP;  self->solid = SOLID_BBOX;  self->s.modelindex = gi.modelindex ("models/monsters/medic/tris.md2");  VectorSet (self->mins, -24, -24, -24);  VectorSet (self->maxs, 24, 24, 32);  self->health = 300;  self->gib_health = -130;  self->mass = 400;  self->pain = medic_pain;  self->die = medic_die;  self->monsterinfo.stand = medic_stand;  self->monsterinfo.walk = medic_walk;  self->monsterinfo.run = medic_run;  self->monsterinfo.dodge = medic_dodge;  self->monsterinfo.attack = medic_attack;  self->monsterinfo.melee = NULL;  self->monsterinfo.sight = medic_sight;  self->monsterinfo.idle = medic_idle;  self->monsterinfo.search = medic_search;  self->monsterinfo.checkattack = medic_checkattack;  gi.linkentity (self);  self->monsterinfo.currentmove = &medic_move_stand;  self->monsterinfo.scale = MODEL_SCALE;  walkmonster_start (self);}
开发者ID:amitahire,项目名称:development,代码行数:54,


示例9: SP_monster_infantry

/*QUAKED monster_infantry (1 .5 0) (-16 -16 -24) (16 16 32) Ambush Trigger_Spawn Sight*/void SP_monster_infantry (edict_t *self){    if (deathmatch->value)    {        G_FreeEdict (self);        return;    }    sound_pain1 = gi.soundindex ("infantry/infpain1.wav");    sound_pain2 = gi.soundindex ("infantry/infpain2.wav");    sound_die1 = gi.soundindex ("infantry/infdeth1.wav");    sound_die2 = gi.soundindex ("infantry/infdeth2.wav");    sound_gunshot = gi.soundindex ("infantry/infatck1.wav");    sound_weapon_cock = gi.soundindex ("infantry/infatck3.wav");    sound_punch_swing = gi.soundindex ("infantry/infatck2.wav");    sound_punch_hit = gi.soundindex ("infantry/melee2.wav");        sound_sight = gi.soundindex ("infantry/infsght1.wav");    sound_search = gi.soundindex ("infantry/infsrch1.wav");    sound_idle = gi.soundindex ("infantry/infidle1.wav");        self->movetype = MOVETYPE_STEP;    self->solid = SOLID_BBOX;    self->s.modelindex = gi.modelindex("models/monsters/infantry/tris.md2");    VectorSet (self->mins, -16, -16, -24);    VectorSet (self->maxs, 16, 16, 32);    self->health = 100;    self->gib_health = -40;    self->mass = 200;    self->pain = infantry_pain;    self->die = infantry_die;    self->monsterinfo.stand = infantry_stand;    self->monsterinfo.walk = infantry_walk;    self->monsterinfo.run = infantry_run;    self->monsterinfo.dodge = infantry_dodge;    self->monsterinfo.attack = infantry_attack;    self->monsterinfo.melee = NULL;    self->monsterinfo.sight = infantry_sight;    self->monsterinfo.idle = infantry_fidget;    gi.linkentity (self);    self->monsterinfo.currentmove = &infantry_move_stand;    self->monsterinfo.scale = MODEL_SCALE;    walkmonster_start (self);}
开发者ID:Bad-ptr,项目名称:q2pro,代码行数:54,


示例10: SP_monster_chick

/*QUAKED monster_chick (1 .5 0) (-16 -16 -24) (16 16 32) Ambush Trigger_Spawn Sight*/void SP_monster_chick (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}	sound_missile_prelaunch	= gi.soundindex ("chick/chkatck1.wav");		sound_missile_launch	= gi.soundindex ("chick/chkatck2.wav");		sound_melee_swing		= gi.soundindex ("chick/chkatck3.wav");		sound_melee_hit			= gi.soundindex ("chick/chkatck4.wav");		sound_missile_reload	= gi.soundindex ("chick/chkatck5.wav");		sound_death1			= gi.soundindex ("chick/chkdeth1.wav");		sound_death2			= gi.soundindex ("chick/chkdeth2.wav");		sound_fall_down			= gi.soundindex ("chick/chkfall1.wav");		sound_idle1				= gi.soundindex ("chick/chkidle1.wav");		sound_idle2				= gi.soundindex ("chick/chkidle2.wav");		sound_pain1				= gi.soundindex ("chick/chkpain1.wav");		sound_pain2				= gi.soundindex ("chick/chkpain2.wav");		sound_pain3				= gi.soundindex ("chick/chkpain3.wav");		sound_sight				= gi.soundindex ("chick/chksght1.wav");		sound_search			= gi.soundindex ("chick/chksrch1.wav");		self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->s.modelindex = gi.modelindex ("models/monsters/bitch/tris.md2");	VectorSet (self->mins, -16, -16, 0);	VectorSet (self->maxs, 16, 16, 56);	self->health = 175;	self->gib_health = -70;	self->mass = 200;	self->pain = chick_pain;	self->die = chick_die;	self->monsterinfo.stand = chick_stand;	self->monsterinfo.walk = chick_walk;	self->monsterinfo.run = chick_run;	self->monsterinfo.dodge = chick_dodge;	self->monsterinfo.attack = chick_attack;	self->monsterinfo.melee = chick_melee;	self->monsterinfo.sight = chick_sight;	gi.linkentity (self);	self->monsterinfo.currentmove = &chick_move_stand;	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start (self);}
开发者ID:AJenbo,项目名称:Quake-2,代码行数:54,


示例11: SP_monster_supertank

/*QUAKED monster_supertank (1 .5 0) (-64 -64 0) (64 64 72) Ambush Trigger_Spawn Sight*/void SP_monster_supertank (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}	sound_pain1 = gi.soundindex ("bosstank/btkpain1.wav");	sound_pain2 = gi.soundindex ("bosstank/btkpain2.wav");	sound_pain3 = gi.soundindex ("bosstank/btkpain3.wav");	sound_death = gi.soundindex ("bosstank/btkdeth1.wav");	sound_search1 = gi.soundindex ("bosstank/btkunqv1.wav");	sound_search2 = gi.soundindex ("bosstank/btkunqv2.wav");//	self->s.sound = gi.soundindex ("bosstank/btkengn1.wav");	tread_sound = gi.soundindex ("bosstank/btkengn1.wav");	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->s.modelindex = gi.modelindex ("models/monsters/boss1/tris.md2");	VectorSet (self->mins, -64, -64, 0);	VectorSet (self->maxs, 64, 64, 112);	self->health = 1500;	self->gib_health = -500;	self->mass = 800;	self->pain = supertank_pain;	self->die = supertank_die;	self->monsterinfo.stand = supertank_stand;	self->monsterinfo.walk = supertank_walk;	self->monsterinfo.run = supertank_run;	self->monsterinfo.dodge = NULL;	self->monsterinfo.attack = supertank_attack;	self->monsterinfo.search = supertank_search;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = NULL;	self->monsterinfo.blocked = supertank_blocked;		//PGM	gi.linkentity (self);		self->monsterinfo.currentmove = &supertank_move_stand;	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start(self);	//PMM	self->monsterinfo.aiflags |= AI_IGNORE_SHOTS;	//pmm}
开发者ID:ZwS,项目名称:qudos,代码行数:53,


示例12: SP_monster_berserk

/*QUAKED monster_berserk (1 .5 0) (-16 -16 -24) (16 16 32) Ambush Trigger_Spawn Sight*/void SP_monster_berserk (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}	// pre-caches	sound_pain  = gi.soundindex ("berserk/berpain2.wav");	sound_die   = gi.soundindex ("berserk/berdeth2.wav");	sound_idle  = gi.soundindex ("berserk/beridle1.wav");	sound_punch = gi.soundindex ("berserk/attack.wav");	sound_search = gi.soundindex ("berserk/bersrch1.wav");	sound_sight = gi.soundindex ("berserk/sight.wav");	self->s.modelindex = gi.modelindex("models/monsters/berserk/tris.md2");	VectorSet (self->mins, -16, -16, -24);	VectorSet (self->maxs, 16, 16, 32);	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->health = 240;	self->gib_health = -60;	self->mass = 250;	self->pain = berserk_pain;	self->die = berserk_die;	self->monsterinfo.stand = berserk_stand;	self->monsterinfo.walk = berserk_walk;	self->monsterinfo.run = berserk_run;	// pmm//	self->monsterinfo.dodge = NULL;	self->monsterinfo.dodge = M_MonsterDodge;	self->monsterinfo.sidestep = berserk_sidestep;	// pmm	self->monsterinfo.attack = NULL;	self->monsterinfo.melee = berserk_melee;	self->monsterinfo.sight = berserk_sight;	self->monsterinfo.search = berserk_search;	self->monsterinfo.blocked = berserk_blocked;		//PGM	self->monsterinfo.currentmove = &berserk_move_stand;	self->monsterinfo.scale = MODEL_SCALE;	gi.linkentity (self);	walkmonster_start (self);}
开发者ID:ZwS,项目名称:qudos,代码行数:52,


示例13: SP_monster_soldier_x

void SP_monster_soldier_x (edict_t *self){	self->s.modelindex = gi.modelindex ("models/monsters/soldier/tris.md2");	//PMM//	self->s.effects |= EF_SPLATTER;	//PMM	self->monsterinfo.scale = MODEL_SCALE;	VectorSet (self->mins, -16, -16, -24);	VectorSet (self->maxs, 16, 16, 32);	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	sound_idle =	gi.soundindex ("soldier/solidle1.wav");	sound_sight1 =	gi.soundindex ("soldier/solsght1.wav");	sound_sight2 =	gi.soundindex ("soldier/solsrch1.wav");	sound_cock =	gi.soundindex ("infantry/infatck3.wav");	self->mass = 100;	self->pain = soldier_pain;	self->die = soldier_die;	self->monsterinfo.stand = soldier_stand;	self->monsterinfo.walk = soldier_walk;	self->monsterinfo.run = soldier_run;	self->monsterinfo.dodge = M_MonsterDodge;	self->monsterinfo.attack = soldier_attack;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = soldier_sight;//=====//ROGUE	self->monsterinfo.blocked = soldier_blocked;	self->monsterinfo.duck = soldier_duck;	self->monsterinfo.unduck = monster_duck_up;	self->monsterinfo.sidestep = soldier_sidestep;	if(self->spawnflags & 8)	// blind		self->monsterinfo.stand = soldier_blind;//ROGUE//=====	gi.linkentity (self);	self->monsterinfo.stand (self);	walkmonster_start (self);}
开发者ID:ZwS,项目名称:qudos,代码行数:49,


示例14: SP_monster_gunner

/*QUAKED monster_gunner (1 .5 0) (-16 -16 -24) (16 16 32) Ambush Trigger_Spawn Sight*/void SP_monster_gunner (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}	sound_death = gi.soundindex ("gunner/death1.wav");		sound_pain = gi.soundindex ("gunner/gunpain2.wav");		sound_pain2 = gi.soundindex ("gunner/gunpain1.wav");		sound_idle = gi.soundindex ("gunner/gunidle1.wav");		sound_open = gi.soundindex ("gunner/gunatck1.wav");		sound_search = gi.soundindex ("gunner/gunsrch1.wav");		sound_sight = gi.soundindex ("gunner/sight1.wav");		gi.soundindex ("gunner/gunatck2.wav");	gi.soundindex ("gunner/gunatck3.wav");	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->s.modelindex = gi.modelindex ("models/monsters/gunner/tris.md2");	VectorSet (self->mins, -16, -16, -24);	VectorSet (self->maxs, 16, 16, 32);	self->health = 175;	self->gib_health = -70;	self->mass = 200;	self->pain = gunner_pain;	self->die = gunner_die;	self->monsterinfo.stand = gunner_stand;	self->monsterinfo.walk = gunner_walk;	self->monsterinfo.run = gunner_run;	self->monsterinfo.dodge = gunner_dodge;	self->monsterinfo.attack = gunner_attack;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = gunner_sight;	self->monsterinfo.search = gunner_search;	gi.linkentity (self);	self->monsterinfo.currentmove = &gunner_move_stand;		self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start (self);}
开发者ID:Izhido,项目名称:qrevpak,代码行数:50,


示例15: SP_monster_makron

/* * QUAKED monster_makron (1 .5 0) (-30 -30 0) (30 30 90) Ambush Trigger_Spawn Sight */voidSP_monster_makron(edict_t *self){	if (!self)	{		return;	}	if (deathmatch->value)	{		G_FreeEdict(self);		return;	}	MakronPrecache();	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->s.modelindex = gi.modelindex("models/monsters/boss3/rider/tris.md2");	VectorSet(self->mins, -30, -30, 0);	VectorSet(self->maxs, 30, 30, 90);	self->health = 3000;	self->gib_health = -2000;	self->mass = 500;	self->pain = makron_pain;	self->die = makron_die;	self->monsterinfo.stand = makron_stand;	self->monsterinfo.walk = makron_walk;	self->monsterinfo.run = makron_run;	self->monsterinfo.dodge = NULL;	self->monsterinfo.attack = makron_attack;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = makron_sight;	self->monsterinfo.checkattack = Makron_CheckAttack;	gi.linkentity(self);	self->monsterinfo.currentmove = &makron_move_sight;	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start(self);}
开发者ID:basecq,项目名称:q2dos,代码行数:47,


示例16: SP_monster_gladiator

/*QUAKED monster_gladiator (1 .5 0) (-32 -32 -24) (32 32 64) Ambush Trigger_Spawn Sight*/void SP_monster_gladiator (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}  SP_monster_gladiator_precache();	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->s.modelindex = gi.modelindex ("models/monsters/gladiatr/tris.md2");	VectorSet (self->mins, -32, -32, -24);	VectorSet (self->maxs, 32, 32, 64);	self->health = 400;	self->gib_health = -175;	self->mass = 400;	self->pain = gladiator_pain;	self->die = gladiator_die;	self->monsterinfo.stand = gladiator_stand;	self->monsterinfo.walk = gladiator_walk;	self->monsterinfo.run = gladiator_run;	self->monsterinfo.dodge = NULL;	self->monsterinfo.attack = gladiator_attack;	self->monsterinfo.melee = gladiator_melee;	self->monsterinfo.sight = gladiator_sight;	self->monsterinfo.idle = gladiator_idle;	self->monsterinfo.search = gladiator_search;	gi.linkentity (self);	self->monsterinfo.currentmove = &gladiator_move_stand;	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start (self);}
开发者ID:ZwS,项目名称:qudos,代码行数:41,


示例17: SP_monster_jorg

/*QUAKED monster_jorg (1 .5 0) (-80 -80 0) (90 90 140) Ambush Trigger_Spawn Sight*/void SP_monster_jorg (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}  SP_monster_jorg_precache();	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->s.modelindex = gi.modelindex ("models/monsters/boss3/rider/tris.md2");	self->s.modelindex2 = gi.modelindex ("models/monsters/boss3/jorg/tris.md2");	VectorSet (self->mins, -80, -80, 0);	VectorSet (self->maxs, 80, 80, 140);	self->health = 3000;	self->gib_health = -2000;	self->mass = 1000;	self->pain = jorg_pain;	self->die = jorg_die;	self->monsterinfo.stand = jorg_stand;	self->monsterinfo.walk = jorg_walk;	self->monsterinfo.run = jorg_run;	self->monsterinfo.dodge = NULL;	self->monsterinfo.attack = jorg_attack;	self->monsterinfo.search = jorg_search;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = NULL;	self->monsterinfo.checkattack = Jorg_CheckAttack;	gi.linkentity (self);		self->monsterinfo.currentmove = &jorg_move_stand;	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start(self);}
开发者ID:ZwS,项目名称:qudos,代码行数:41,


示例18: SP_monster_soldier_x

void SP_monster_soldier_x (edict_t *self){	if (!self)	{		return;	}	self->s.modelindex = gi.modelindex ("models/monsters/soldier/tris.md2");	self->monsterinfo.scale = MODEL_SCALE;	Vector3Set (self->mins, -16, -16, -24);	Vector3Set (self->maxs, 16, 16, 32);	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	sound_idle =	gi.soundindex ("soldier/solidle1.wav");	sound_sight1 =	gi.soundindex ("soldier/solsght1.wav");	sound_sight2 =	gi.soundindex ("soldier/solsrch1.wav");	sound_cock =	gi.soundindex ("infantry/infatck3.wav");	self->mass = 100;	self->pain = soldier_pain;	self->die = soldier_die;	self->monsterinfo.stand = soldier_stand;	self->monsterinfo.walk = soldier_walk;	self->monsterinfo.run = soldier_run;	self->monsterinfo.dodge = soldier_dodge;	self->monsterinfo.attack = soldier_attack;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = soldier_sight;	gi.linkentity (self);	self->monsterinfo.stand (self);	walkmonster_start (self);}
开发者ID:raynorpat,项目名称:cake,代码行数:38,


示例19: SP_monster_parasite

/*QUAKED monster_parasite (1 .5 0) (-16 -16 -24) (16 16 32) Ambush Trigger_Spawn Sight*/void SP_monster_parasite (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}  SP_monster_parasite_precache();	self->s.modelindex = gi.modelindex ("models/monsters/parasite/tris.md2");	VectorSet (self->mins, -16, -16, -24);	VectorSet (self->maxs, 16, 16, 24);	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->health = 175;	self->gib_health = -50;	self->mass = 250;	self->pain = parasite_pain;	self->die = parasite_die;	self->monsterinfo.stand = parasite_stand;	self->monsterinfo.walk = parasite_start_walk;	self->monsterinfo.run = parasite_start_run;	self->monsterinfo.attack = parasite_attack;	self->monsterinfo.sight = parasite_sight;	self->monsterinfo.idle = parasite_idle;	gi.linkentity (self);	self->monsterinfo.currentmove = &parasite_move_stand;		self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start (self);}
开发者ID:ZwS,项目名称:qudos,代码行数:39,


示例20: SP_misc_insane

/*QUAKED misc_insane (1 .5 0) (-16 -16 -24) (16 16 32) Ambush Trigger_Spawn CRAWL CRUCIFIED STAND_GROUND ALWAYS_STAND*/void SP_misc_insane (edict_t *self){//	static int skin = 0;	//@@	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}	sound_fist = gi.soundindex ("insane/insane11.wav");	sound_shake = gi.soundindex ("insane/insane5.wav");	sound_moan = gi.soundindex ("insane/insane7.wav");	sound_scream[0] = gi.soundindex ("insane/insane1.wav");	sound_scream[1] = gi.soundindex ("insane/insane2.wav");	sound_scream[2] = gi.soundindex ("insane/insane3.wav");	sound_scream[3] = gi.soundindex ("insane/insane4.wav");	sound_scream[4] = gi.soundindex ("insane/insane6.wav");	sound_scream[5] = gi.soundindex ("insane/insane8.wav");	sound_scream[6] = gi.soundindex ("insane/insane9.wav");	sound_scream[7] = gi.soundindex ("insane/insane10.wav");	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->s.modelindex = gi.modelindex("models/monsters/insane/tris.md2");	VectorSet (self->mins, -16, -16, -24);	VectorSet (self->maxs, 16, 16, 32);	if(!self->health)		self->health = 100;	if(!self->gib_health)		self->gib_health = -50;	if(!self->mass)		self->mass = 300;	self->pain = insane_pain;	self->die = insane_die;	self->monsterinfo.stand = insane_stand;	self->monsterinfo.walk = insane_walk;	self->monsterinfo.run = insane_run;	self->monsterinfo.dodge = NULL;	self->monsterinfo.attack = NULL;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = NULL;	self->monsterinfo.aiflags |= AI_GOOD_GUY;//@@//	self->s.skinnum = skin;//	skin++;//	if (skin > 12)//		skin = 0;	gi.linkentity (self);	if (self->spawnflags & 16)				// Stand Ground		self->monsterinfo.aiflags |= AI_STAND_GROUND;	self->monsterinfo.currentmove = &insane_move_stand_normal;	if(!self->monsterinfo.flies)		self->monsterinfo.flies = 0.30;	self->common_name = "Insane Marine";	self->monsterinfo.scale = MODEL_SCALE;	if (self->spawnflags & 8)					// Crucified ?	{		VectorSet (self->mins, -16, 0, 0);		VectorSet (self->maxs, 16, 8, 32);		self->flags |= FL_NO_KNOCKBACK;		flymonster_start (self);	}	else	{		walkmonster_start (self);		self->s.skinnum = rand()%3;	}}
开发者ID:PBrookfield,项目名称:mpgamex86,代码行数:83,


示例21: SP_monster_gunner

/*QUAKED monster_gunner (1 .5 0) (-16 -16 -24) (16 16 32) Ambush Trigger_Spawn Sight*/void SP_monster_gunner (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}	sound_death = gi.soundindex ("gunner/death1.wav");		sound_pain = gi.soundindex ("gunner/gunpain2.wav");		sound_pain2 = gi.soundindex ("gunner/gunpain1.wav");		sound_idle = gi.soundindex ("gunner/gunidle1.wav");		sound_open = gi.soundindex ("gunner/gunatck1.wav");		sound_search = gi.soundindex ("gunner/gunsrch1.wav");		sound_sight = gi.soundindex ("gunner/sight1.wav");		if(monsterjump->value)	{		self->monsterinfo.jump = gunner_jump;		self->monsterinfo.jumpup = 48;		self->monsterinfo.jumpdn = 64;	}	gi.soundindex ("gunner/gunatck2.wav");	gi.soundindex ("gunner/gunatck3.wav");	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	// Lazarus: special purpose skins	if ( self->style )	{		PatchMonsterModel("models/monsters/gunner/tris.md2");		self->s.skinnum = self->style * 2;	}		self->s.modelindex = gi.modelindex ("models/monsters/gunner/tris.md2");	VectorSet (self->mins, -16, -16, -24);	VectorSet (self->maxs, 16, 16, 32);	// Lazarus: mapper-configurable health	if(!self->health)		self->health = 175;	if(!self->gib_health)		self->gib_health = -70;	if(!self->mass)		self->mass = 200;	self->pain = gunner_pain;	self->die = gunner_die;	self->monsterinfo.stand = gunner_stand;	self->monsterinfo.walk = gunner_walk;	self->monsterinfo.run = gunner_run;	self->monsterinfo.dodge = gunner_dodge;	self->monsterinfo.attack = gunner_attack;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = gunner_sight;	self->monsterinfo.search = gunner_search;	// Knightmare- added sparks and blood type	if (!self->blood_type)		self->blood_type = 3; //sparks and blood	// Lazarus	if(self->powerarmor) {		self->monsterinfo.power_armor_type = POWER_ARMOR_SHIELD;		self->monsterinfo.power_armor_power = self->powerarmor;	}	if(!self->monsterinfo.flies)		self->monsterinfo.flies = 0.30;	// Lazarus - use move_origin for grenade aiming	VectorCopy(monster_flash_offset[MZ2_GUNNER_GRENADE_1],self->move_origin);	gi.linkentity (self);	self->monsterinfo.currentmove = &gunner_move_stand;		if(self->health < 0)	{		mmove_t	*deathmoves[] = {&gunner_move_death,								 NULL};		M_SetDeath(self,(mmove_t **)&deathmoves);	}	self->common_name = "Gunner";	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start (self);}
开发者ID:n1ckn4m3,项目名称:kmquake2megacoop,代码行数:90,


示例22: SP_monster_infantry

/*QUAKED monster_infantry (1 .5 0) (-16 -16 -24) (16 16 32) Ambush Trigger_Spawn Sight*/void SP_monster_infantry (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}	sound_pain1 = gi.soundindex ("infantry/infpain1.wav");	sound_pain2 = gi.soundindex ("infantry/infpain2.wav");	sound_die1 = gi.soundindex ("infantry/infdeth1.wav");	sound_die2 = gi.soundindex ("infantry/infdeth2.wav");	sound_gunshot = gi.soundindex ("infantry/infatck1.wav");	sound_weapon_cock = gi.soundindex ("infantry/infatck3.wav");	sound_punch_swing = gi.soundindex ("infantry/infatck2.wav");	sound_punch_hit = gi.soundindex ("infantry/melee2.wav");		sound_sight = gi.soundindex ("infantry/infsght1.wav");	sound_search = gi.soundindex ("infantry/infsrch1.wav");	sound_idle = gi.soundindex ("infantry/infidle1.wav");	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	// Lazarus: special purpose skins	if ( self->style )	{		PatchMonsterModel("models/monsters/infantry/tris.md2");		self->s.skinnum = self->style * 2;	}	self->s.modelindex = gi.modelindex("models/monsters/infantry/tris.md2");	VectorSet (self->mins, -16, -16, -24);	VectorSet (self->maxs, 16, 16, 32);	// Lazarus: mapper-configurable health	if(!self->health)		self->health = 100;	if(!self->gib_health)		self->gib_health = -40;	if(!self->mass)		self->mass = 200;	self->pain = infantry_pain;	self->die = infantry_die;	self->monsterinfo.stand = infantry_stand;	self->monsterinfo.walk = infantry_walk;	self->monsterinfo.run = infantry_run;	self->monsterinfo.dodge = infantry_dodge;	self->monsterinfo.attack = infantry_attack;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = infantry_sight;	self->monsterinfo.idle = infantry_fidget;	if(monsterjump->value)	{		self->monsterinfo.jump = infantry_jump;		self->monsterinfo.jumpup = 48;		self->monsterinfo.jumpdn = 160;	}	// Lazarus	if(self->powerarmor) {		self->monsterinfo.power_armor_type = POWER_ARMOR_SHIELD;		self->monsterinfo.power_armor_power = self->powerarmor;	}	if(!self->monsterinfo.flies)		self->monsterinfo.flies = 0.40;	gi.linkentity (self);	self->monsterinfo.currentmove = &infantry_move_stand;	if(self->health < 0)	{		mmove_t	*deathmoves[] = {&infantry_move_death1,			                     &infantry_move_death2,								 &infantry_move_death3,								 NULL};		M_SetDeath(self,(mmove_t **)&deathmoves);	}	self->common_name = "Enforcer";	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start (self);}
开发者ID:Nephatrine,项目名称:nephq2-game,代码行数:88,


示例23: SP_monster_widow

/*QUAKED monster_widow (1 .5 0) (-40 -40 0) (40 40 144) Ambush Trigger_Spawn Sight*/void SP_monster_widow (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}	sound_pain1 = gi.soundindex ("widow/bw1pain1.wav");	sound_pain2 = gi.soundindex ("widow/bw1pain2.wav");	sound_pain3 = gi.soundindex ("widow/bw1pain3.wav");	sound_search1 = gi.soundindex ("bosshovr/bhvunqv1.wav");	sound_rail = gi.soundindex ("gladiator/railgun.wav");	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->s.modelindex = gi.modelindex ("models/monsters/blackwidow/tris.md2");	VectorSet (self->mins, -40, -40, 0);	VectorSet (self->maxs, 40, 40, 144);	self->health = 2000 + 1000*(skill->value);	if (coop->value)		self->health += 500*(skill->value);	self->gib_health = -5000;	self->mass = 1500;	if (skill->value == 3)	{		self->monsterinfo.power_armor_type = POWER_ARMOR_SHIELD;		self->monsterinfo.power_armor_power = 500;	}	self->yaw_speed = 30;		self->flags |= FL_IMMUNE_LASER;	self->monsterinfo.aiflags |= AI_IGNORE_SHOTS;	self->pain = widow_pain;	self->die = widow_die;	self->monsterinfo.melee = widow_melee;	self->monsterinfo.stand = widow_stand;	self->monsterinfo.walk = widow_walk;	self->monsterinfo.run = widow_run;	self->monsterinfo.attack = widow_attack;	self->monsterinfo.search = widow_search;	self->monsterinfo.checkattack = Widow_CheckAttack;	self->monsterinfo.sight = widow_sight;		self->monsterinfo.blocked = widow_blocked;	gi.linkentity (self);	self->monsterinfo.currentmove = &widow_move_stand;		self->monsterinfo.scale = MODEL_SCALE;	WidowPrecache();	WidowCalcSlots(self);	widow_damage_multiplier = 1;	walkmonster_start (self);}
开发者ID:DrItanium,项目名称:rogue,代码行数:63,


示例24: SP_monster_tank

/*QUAKED monster_tank_commander (1 .5 0) (-32 -32 -16) (32 32 72) Ambush Trigger_Spawn Sight*/void SP_monster_tank (edict_t *self){// debut mod : pet		if (self->monsterinfo.PetOwner && !using_pets->value)	{		G_FreeEdict (self);		return;	}	else if (deathmatch->value && !dm_monsters->value)	{				G_FreeEdict (self);		return;	}// fin mod : pet	self->s.modelindex = gi.modelindex ("models/monsters/tank/tris.md2");	VectorSet (self->mins, -32, -32, -16);	VectorSet (self->maxs, 32, 32, 72);	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	sound_pain = gi.soundindex ("tank/tnkpain2.wav");	sound_thud = gi.soundindex ("tank/tnkdeth2.wav");	sound_idle = gi.soundindex ("tank/tnkidle1.wav");	sound_die = gi.soundindex ("tank/death.wav");	sound_step = gi.soundindex ("tank/step.wav");	sound_windup = gi.soundindex ("tank/tnkatck4.wav");	sound_strike = gi.soundindex ("tank/tnkatck5.wav");	sound_sight = gi.soundindex ("tank/sight1.wav");	gi.soundindex ("tank/tnkatck1.wav");	gi.soundindex ("tank/tnkatk2a.wav");	gi.soundindex ("tank/tnkatk2b.wav");	gi.soundindex ("tank/tnkatk2c.wav");	gi.soundindex ("tank/tnkatk2d.wav");	gi.soundindex ("tank/tnkatk2e.wav");	gi.soundindex ("tank/tnkatck3.wav");	if (strcmp(self->classname, "monster_tank_commander") == 0)	{		self->health = 1000;		self->gib_health = -225;	}	else	{		self->health = 750;		self->gib_health = -200;	}	self->mass = 500;	self->pain = tank_pain;	self->die = tank_die;	self->monsterinfo.stand = tank_stand;	self->monsterinfo.walk = tank_walk;	self->monsterinfo.run = tank_run;	self->monsterinfo.dodge = NULL;	self->monsterinfo.attack = tank_attack;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = tank_sight;	self->monsterinfo.idle = tank_idle;	gi.linkentity (self);		self->monsterinfo.currentmove = &tank_move_stand;	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start(self);	if (strcmp(self->classname, "monster_tank_commander") == 0)		self->s.skinnum = 2;}
开发者ID:Nekrofage,项目名称:Doom-Quake-1-Quake-2-for-Android,代码行数:77,


示例25: SP_monster_soldier_x

void SP_monster_soldier_x (edict_t *self){	// Lazarus: special purpose skins	if ( self->style )		PatchMonsterModel("models/monsters/soldier/tris.md2");	self->s.modelindex = gi.modelindex ("models/monsters/soldier/tris.md2");	self->monsterinfo.scale = MODEL_SCALE;	VectorSet (self->mins, -16, -16, -24);	VectorSet (self->maxs, 16, 16, 32);	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	sound_idle =	gi.soundindex ("soldier/solidle1.wav");	sound_sight1 =	gi.soundindex ("soldier/solsght1.wav");	sound_sight2 =	gi.soundindex ("soldier/solsrch1.wav");	sound_cock =	gi.soundindex ("infantry/infatck3.wav");	if(!self->mass)		self->mass = 100;	self->pain = soldier_pain;	self->die = soldier_die;	self->monsterinfo.stand = soldier_stand;	self->monsterinfo.walk = soldier_walk;	self->monsterinfo.run = soldier_run;	self->monsterinfo.dodge = soldier_dodge;	self->monsterinfo.attack = soldier_attack;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = soldier_sight;	if(monsterjump->value)	{		self->monsterinfo.jump = soldier_jump;		self->monsterinfo.jumpup = 48;		self->monsterinfo.jumpdn = 160;	}	// DWH	if(self->powerarmor)	{		self->monsterinfo.power_armor_type = POWER_ARMOR_SHIELD;		self->monsterinfo.power_armor_power = self->powerarmor;	}	// end DWH	gi.linkentity (self);	if(!self->monsterinfo.flies)		self->monsterinfo.flies = 0.40;	if(self->health < 0)	{		mmove_t	*deathmoves[] = {&soldier_move_death1,			                     &soldier_move_death2,								 &soldier_move_death3,								 &soldier_move_death4,								 &soldier_move_death5,								 &soldier_move_death6,								 NULL};		M_SetDeath(self,(mmove_t **)&deathmoves);	}	walkmonster_start (self);}
开发者ID:Nephatrine,项目名称:nephq2-game,代码行数:64,


示例26: SP_monster_tank

/*QUAKED monster_tank_commander (1 .5 0) (-32 -32 -16) (32 32 72) Ambush Trigger_Spawn Sight*/void SP_monster_tank (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}	// Lazarus: special purpose skins	if (strcmp(self->classname, "monster_tank_commander") == 0)		self->s.skinnum = 2;	if ( self->style )	{		PatchMonsterModel("models/monsters/tank/tris.md2");		self->s.skinnum += self->style * 4;	}	self->s.modelindex = gi.modelindex ("models/monsters/tank/tris.md2");	VectorSet (self->mins, -32, -32, -16);	VectorSet (self->maxs, 32, 32, 72);	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	sound_pain = gi.soundindex ("tank/tnkpain2.wav");	sound_thud = gi.soundindex ("tank/tnkdeth2.wav");	sound_idle = gi.soundindex ("tank/tnkidle1.wav");	sound_die = gi.soundindex ("tank/death.wav");	sound_step = gi.soundindex ("tank/step.wav");	sound_windup = gi.soundindex ("tank/tnkatck4.wav");	sound_strike = gi.soundindex ("tank/tnkatck5.wav");	sound_sight = gi.soundindex ("tank/sight1.wav");	gi.soundindex ("tank/tnkatck1.wav");	gi.soundindex ("tank/tnkatk2a.wav");	gi.soundindex ("tank/tnkatk2b.wav");	gi.soundindex ("tank/tnkatk2c.wav");	gi.soundindex ("tank/tnkatk2d.wav");	gi.soundindex ("tank/tnkatk2e.wav");	gi.soundindex ("tank/tnkatck3.wav");	if (strcmp(self->classname, "monster_tank_commander") == 0)	{		// Lazarus: mapper-configurable health		if(!self->health)			self->health = 1000;		if(!self->gib_health)			self->gib_health = -225;		self->common_name = "Tank Commander";	}	else	{		// Lazarus: mapper-configurable health		if(!self->health)			self->health = 750;		if(!self->gib_health)			self->gib_health = -200;		self->common_name = "Tank";	}	if(!self->mass)		self->mass = 500;	self->pain = tank_pain;	self->die = tank_die;	self->monsterinfo.stand = tank_stand;	self->monsterinfo.walk = tank_walk;	self->monsterinfo.run = tank_run;	self->monsterinfo.dodge = NULL;	self->monsterinfo.attack = tank_attack;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = tank_sight;	self->monsterinfo.idle = tank_idle;	// Knightmare- added sparks and blood type	if (!self->blood_type)		self->blood_type = 2; //sparks	else		self->fogclip |= 2; //custom bloodtype flag	// Lazarus power armor	if(self->powerarmor) {		self->monsterinfo.power_armor_type = POWER_ARMOR_SHIELD;		self->monsterinfo.power_armor_power = self->powerarmor;	}	if(!self->monsterinfo.flies)		self->monsterinfo.flies = 0.05;	gi.linkentity (self);	self->monsterinfo.currentmove = &tank_move_stand;	if(self->health < 0)	{		mmove_t	*deathmoves[] = {&tank_move_death,								 NULL};		M_SetDeath(self,(mmove_t **)&deathmoves);	}	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start(self);}
开发者ID:Nephatrine,项目名称:nephq2-game,代码行数:100,


示例27: SP_monster_makron_put

void SP_monster_makron_put (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}	MakronPrecache ();	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	// Lazarus: special purpose skins	if ( self->style )	{		PatchMonsterModel("models/monsters/boss3/rider/tris.md2");		self->s.skinnum = self->style * 2;	//	self->style = 0; //clear for custom bloodtype flag	}	self->s.modelindex = gi.modelindex ("models/monsters/boss3/rider/tris.md2");	VectorSet (self->mins, -30, -30, 0);	VectorSet (self->maxs, 30, 30, 90);	if(!self->health)		self->health = 3000 + 1000 * (skill->value);	if (coop->value)		self->health += 500 * (skill->value);	if(!self->gib_health)		self->gib_health = -800;	if(!self->mass)		self->mass = 500;	self->pain = makron_pain;	self->die = makron_die;	self->monsterinfo.stand = makron_stand;	self->monsterinfo.walk = makron_walk;	self->monsterinfo.run = makron_run;	self->monsterinfo.dodge = NULL;	self->monsterinfo.attack = makron_attack;	self->monsterinfo.melee = NULL;	//Knightmare- don't jump flag	if (self->fogclip & 1)		self->monsterinfo.sight = NULL;	else		self->monsterinfo.sight = makron_sight;	self->monsterinfo.checkattack = Makron_CheckAttack;	self->monsterinfo.blocked = Makron_blocked;		//PGM	if (!self->blood_type)		self->blood_type = 2; //sparks	else		self->fogclip |= 2; //custom bloodtype flag	// Lazarus	if(self->powerarmor)	{		if (self->powerarmortype == 1)			self->monsterinfo.power_armor_type = POWER_ARMOR_SCREEN;		else			self->monsterinfo.power_armor_type = POWER_ARMOR_SHIELD;		self->monsterinfo.power_armor_power = self->powerarmor;	}	self->common_name = "Makron";	gi.linkentity (self);	//Knightmare- nojump flag	if (self->fogclip & 1)		self->monsterinfo.currentmove = &makron_move_stand;	else		self->monsterinfo.currentmove = &makron_move_sight;	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start(self);	//PMM	//self->monsterinfo.aiflags |= AI_IGNORE_SHOTS;	//PMM}
开发者ID:PBrookfield,项目名称:mpgamex86,代码行数:81,


示例28: SP_monster_parasite

/*QUAKED monster_parasite (1 .5 0) (-16 -16 -24) (16 16 32) Ambush Trigger_Spawn Sight*/void SP_monster_parasite (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}	sound_pain1 = gi.soundindex ("parasite/parpain1.wav");		sound_pain2 = gi.soundindex ("parasite/parpain2.wav");		sound_die = gi.soundindex ("parasite/pardeth1.wav");		sound_launch = gi.soundindex("parasite/paratck1.wav");	sound_impact = gi.soundindex("parasite/paratck2.wav");	sound_suck = gi.soundindex("parasite/paratck3.wav");	sound_reelin = gi.soundindex("parasite/paratck4.wav");	sound_sight = gi.soundindex("parasite/parsght1.wav");	sound_tap = gi.soundindex("parasite/paridle1.wav");	sound_scratch = gi.soundindex("parasite/paridle2.wav");	sound_search = gi.soundindex("parasite/parsrch1.wav");	// Lazarus: special purpose skins	if ( self->style )	{		PatchMonsterModel("models/monsters/parasite/tris.md2");		self->s.skinnum = self->style * 2;	}	self->s.modelindex = gi.modelindex ("models/monsters/parasite/tris.md2");	VectorSet (self->mins, -16, -16, -24);	VectorSet (self->maxs, 16, 16, 24);	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	// Lazarus: mapper-configurable health	if(!self->health)		self->health = 175;	if(!self->gib_health)		self->gib_health = -50;	if(!self->mass)		self->mass = 250;	self->pain = parasite_pain;	self->die = parasite_die;	self->monsterinfo.stand = parasite_stand;	self->monsterinfo.walk = parasite_start_walk;	self->monsterinfo.run = parasite_start_run;	self->monsterinfo.attack = parasite_attack;	self->monsterinfo.sight = parasite_sight;	self->monsterinfo.idle = parasite_idle;	self->monsterinfo.blocked = parasite_blocked;	// Knightmare- added sparks and blood type	if (!self->blood_type)		self->blood_type = 3; //sparks and blood	// Lazarus	if (self->powerarmor) {		self->monsterinfo.power_armor_type = POWER_ARMOR_SHIELD;		self->monsterinfo.power_armor_power = self->powerarmor;	}	if (!self->monsterinfo.flies)		self->monsterinfo.flies = 0.35;	if (monsterjump->value)	{		self->monsterinfo.jump = parasite_jump;		self->monsterinfo.jumpup = 32;		self->monsterinfo.jumpdn = 160;	}	gi.linkentity (self);	self->monsterinfo.currentmove = &parasite_move_stand;		if (self->health < 0)	{		mmove_t	*deathmoves[] = {&parasite_move_death,								 NULL};		M_SetDeath(self,(mmove_t **)&deathmoves);	}	self->common_name = "Parasite";	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start (self);}
开发者ID:Nephatrine,项目名称:nephq2-game,代码行数:85,


示例29: SP_monster_widow

/* * QUAKED monster_widow (1 .5 0) (-40 -40 0) (40 40 144) Ambush Trigger_Spawn Sight */voidSP_monster_widow(edict_t *self){	if (!self)	{		return;	}	/* ace - monsters spawned with FL_RMONSTER will get converted	*	 * to a random spawn spot for the randomizer system.  Class		*	 * and tier will be tallied, origin, angles, spawnflags, etc..	*	 * will also be recorded.  This entity will be freed after.		*//*	if (self->flags & FL_RMONSTER)	{		SP_monster_rspawnspot (self);		return;	} */	if (deathmatch->value)	{		G_FreeEdict(self);		return;	}	sound_pain1 = gi.soundindex("widow/bw1pain1.wav");	sound_pain2 = gi.soundindex("widow/bw1pain2.wav");	sound_pain3 = gi.soundindex("widow/bw1pain3.wav");	sound_search1 = gi.soundindex("bosshovr/bhvunqv1.wav");	sound_rail = gi.soundindex("gladiator/railgun.wav");	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->s.modelindex = gi.modelindex("models/monsters/blackwidow/tris.md2");	VectorSet(self->mins, -40, -40, 0);	VectorSet(self->maxs, 40, 40, 144);	self->health = 2000 + 1000 * (skill->value);	if (coop->value)	{		self->health += 500 * (skill->value);	}	self->gib_health = -5000;	self->mass = 1500;	if (skill->value == 3)	{		self->monsterinfo.power_armor_type = POWER_ARMOR_SHIELD;		self->monsterinfo.power_armor_power = 500;	}	self->yaw_speed = 30;	self->flags |= FL_IMMUNE_LASER;	self->monsterinfo.aiflags |= AI_IGNORE_SHOTS;	self->pain = widow_pain;	self->die = widow_die;	self->monsterinfo.melee = widow_melee;	self->monsterinfo.stand = widow_stand;	self->monsterinfo.walk = widow_walk;	self->monsterinfo.run = widow_run;	self->monsterinfo.attack = widow_attack;	self->monsterinfo.search = widow_search;	self->monsterinfo.checkattack = Widow_CheckAttack;	self->monsterinfo.sight = widow_sight;	self->monsterinfo.blocked = widow_blocked;	gi.linkentity(self);	self->monsterinfo.currentmove = &widow_move_stand;	self->monsterinfo.scale = MODEL_SCALE;	WidowPrecache();	WidowCalcSlots(self);	widow_damage_multiplier = 1;	walkmonster_start(self);}
开发者ID:acebox,项目名称:yquake2_acemod,代码行数:85,


示例30: SP_monster_medic

/*QUAKED monster_medic (1 .5 0) (-16 -16 -24) (16 16 32) Ambush Trigger_Spawn Sight*/void SP_monster_medic (edict_t *self){	if (deathmatch->value)	{		G_FreeEdict (self);		return;	}	self->movetype = MOVETYPE_STEP;	self->solid = SOLID_BBOX;	self->s.modelindex = gi.modelindex ("models/monsters/medic/tris.md2");	VectorSet (self->mins, -24, -24, -24);	VectorSet (self->maxs, 24, 24, 32);//PMM	if (strcmp(self->classname, "monster_medic_commander") == 0)	{		self->health = 600;			//	fixme		self->gib_health = -130;		self->mass = 600;		self->yaw_speed = 40; // default is 20		MedicCommanderCache();//		self->s.skinnum = 2;	}	else	{//PMM		self->health = 300;		self->gib_health = -130;		self->mass = 400;//		self->s.skinnum = 0;	}	self->pain = medic_pain;	self->die = medic_die;	self->monsterinfo.stand = medic_stand;	self->monsterinfo.walk = medic_walk;	self->monsterinfo.run = medic_run;	// pmm	self->monsterinfo.dodge = M_MonsterDodge;	self->monsterinfo.duck = medic_duck;	self->monsterinfo.unduck = monster_duck_up;	self->monsterinfo.sidestep = medic_sidestep;//	self->monsterinfo.dodge = medic_dodge;	// pmm	self->monsterinfo.attack = medic_attack;	self->monsterinfo.melee = NULL;	self->monsterinfo.sight = medic_sight;	self->monsterinfo.idle = medic_idle;	self->monsterinfo.search = medic_search;	self->monsterinfo.checkattack = medic_checkattack;	self->monsterinfo.blocked = medic_blocked;	gi.linkentity (self);	self->monsterinfo.currentmove = &medic_move_stand;	self->monsterinfo.scale = MODEL_SCALE;	walkmonster_start (self);	//PMM	self->monsterinfo.aiflags |= AI_IGNORE_SHOTS;	if (self->mass > 400)	{		self->s.skinnum = 2;		if (skill->value == 0)			self->monsterinfo.monster_slots = 3;		else if (skill->value == 1)			self->monsterinfo.monster_slots = 4;		else if (skill->value == 2)			self->monsterinfo.monster_slots = 6;		else if (skill->value == 3)			self->monsterinfo.monster_slots = 6;		// commander sounds		commander_sound_idle1 = gi.soundindex ("medic_commander/medidle.wav");		commander_sound_pain1 = gi.soundindex ("medic_commander/medpain1.wav");		commander_sound_pain2 = gi.soundindex ("medic_commander/medpain2.wav");		commander_sound_die = gi.soundindex ("medic_commander/meddeth.wav");		commander_sound_sight = gi.soundindex ("medic_commander/medsght.wav");		commander_sound_search = gi.soundindex ("medic_commander/medsrch.wav");		commander_sound_hook_launch = gi.soundindex ("medic_commander/medatck2c.wav");		commander_sound_hook_hit = gi.soundindex ("medic_commander/medatck3a.wav");		commander_sound_hook_heal = gi.soundindex ("medic_commander/medatck4a.wav");		commander_sound_hook_retract = gi.soundindex ("medic_commander/medatck5a.wav");		commander_sound_spawn = gi.soundindex ("medic_commander/monsterspawn1.wav");		gi.soundindex ("tank/tnkatck3.wav");	}	else	{		sound_idle1 = gi.soundindex ("medic/idle.wav");		sound_pain1 = gi.soundindex ("medic/medpain1.wav");		sound_pain2 = gi.soundindex ("medic/medpain2.wav");		sound_die = gi.soundindex ("medic/meddeth1.wav");		sound_sight = gi.soundindex ("medic/medsght1.wav");		sound_search = gi.soundindex ("medic/medsrch1.wav");		sound_hook_launch = gi.soundindex ("medic/medatck2.wav");//.........这里部分代码省略.........
开发者ID:ajbonner,项目名称:yet-another-quake2-fork,代码行数:101,



注:本文中的walkmonster_start函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ walkpgdir函数代码示例
C++ walker函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。