这篇教程C++ target_laser_off函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中target_laser_off函数的典型用法代码示例。如果您正苦于以下问题:C++ target_laser_off函数的具体用法?C++ target_laser_off怎么用?C++ target_laser_off使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了target_laser_off函数的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: target_laser_startvoid target_laser_start (gentity_t *self){ gentity_t *ent; self->s.eType = ET_BEAM; if (self->target) { ent = G_Find (NULL, FOFS(targetname), self->target); if (!ent) { G_Printf ("%s at %s: %s is a bad target/n", self->classname, vtos(self->s.origin), self->target); } self->enemy = ent; } else { G_SetMovedir (self->s.angles, self->movedir); } self->use = target_laser_use; self->think = target_laser_think; if ( !self->damage ) { self->damage = 1; } if (self->spawnflags & 1) target_laser_on (self); else target_laser_off (self);}
开发者ID:ElderPlayerX,项目名称:Rune,代码行数:28,
示例2: target_laser_usevoid target_laser_use (edict_t *self, edict_t *other, edict_t *activator){ self->activator = activator; if (self->spawnflags & 1) target_laser_off (self); else target_laser_on (self);}
开发者ID:AJenbo,项目名称:Quake-2,代码行数:8,
示例3: target_laser_usevoid target_laser_use (gentity_t *self, gentity_t *other, gentity_t *activator){ self->activator = activator; if ( self->nextthink > 0 ) target_laser_off (self); else target_laser_on (self);}
开发者ID:ElderPlayerX,项目名称:Rune,代码行数:8,
示例4: target_laser_startvoid target_laser_start (edict_t *self){ edict_t *ent; self->movetype = MOVETYPE_NONE; self->solid = SOLID_NOT; self->s.renderfx |= RF_BEAM|RF_TRANSLUCENT; self->s.modelindex = 1; // must be non-zero // set the beam diameter if (self->spawnflags & 64) self->s.frame = 16; else self->s.frame = 4; // set the color if (self->spawnflags & 2) self->s.skinnum = 0xf2f2f0f0; else if (self->spawnflags & 4) self->s.skinnum = 0xd0d1d2d3; else if (self->spawnflags & 8) self->s.skinnum = 0xf3f3f1f1; else if (self->spawnflags & 16) self->s.skinnum = 0xdcdddedf; else if (self->spawnflags & 32) self->s.skinnum = 0xe0e1e2e3; if (!self->enemy) { if (self->target) { ent = G_Find (NULL, FOFS(targetname), self->target); if (!ent) gi.dprintf ("%s at %s: %s is a bad target/n", self->classname, vtos(self->s.origin), self->target); self->enemy = ent; } else { G_SetMovedir (self->s.angles, self->movedir); } } self->use = target_laser_use; self->think = target_laser_think; if (!self->dmg) self->dmg = 1; VectorSet (self->mins, -8, -8, -8); VectorSet (self->maxs, 8, 8, 8); gi.linkentity (self); if (self->spawnflags & 1) target_laser_on (self); else target_laser_off (self);}
开发者ID:AJenbo,项目名称:Quake-2,代码行数:56,
示例5: target_laser_usevoid target_laser_use (gentity_t *self, gentity_t *other, gentity_t *activator){ G_ActivateBehavior(self,BSET_USE); self->activator = activator; if ( self->nextthink > 0 ) target_laser_off (self); else target_laser_on (self);}
开发者ID:AlexCSilva,项目名称:jediacademy,代码行数:10,
示例6: target_laser_usevoid target_laser_use(gentity_t *self, gentity_t *other, gentity_t *activator) { // Nico, silent GCC (void)other; self->activator = activator; if (self->nextthink > 0) { target_laser_off(self); } else { target_laser_on(self); }}
开发者ID:boutetnico,项目名称:ETrun,代码行数:11,
示例7: target_laser_usevoid target_laser_use (gentity_t *self, gentity_t *other, gentity_t *activator){ /* LQ3A */ UNREFERENCED_PARAMETER(other); self->activator = activator; if ( self->nextthink > 0 ) target_laser_off (self); else target_laser_on (self);}
开发者ID:monoknot,项目名称:loaded-q3a,代码行数:11,
示例8: target_laser_usevoid target_laser_use (edict_t *self, edict_t *other, edict_t *activator){ if (!self || !activator) { return; } self->activator = activator; if (self->spawnflags & 1) { target_laser_off(self); } else { target_laser_on(self); }}
开发者ID:basecq,项目名称:q2dos,代码行数:18,
示例9: PlaceLaser//.........这里部分代码省略......... grenade -> movetype = MOVETYPE_NONE; grenade -> clipmask = MASK_SHOT; grenade->solid = SOLID_BBOX; VectorSet(grenade->mins, -3, -3, 0); VectorSet(grenade->maxs, 3, 3, 6); grenade -> takedamage = DAMAGE_NO; grenade -> s.modelindex = gi.modelindex ("models/objects/grenade2/tris.md2"); grenade -> owner = ent; grenade -> creator = laser; grenade -> monsterinfo.aiflags = AI_NOSTEP; grenade -> classname = "laser_defense_gr"; grenade -> nextthink = level.time + LASER_TIMEUP+GetRandom(0,30);//GetRandom((LASER_TIMEUP/2),(2*LASER_TIMEUP)); grenade -> think = laser_cleanup; // Now lets find the other end of the laser // by starting at the grenade position VectorCopy (grenade->s.origin, start); // setup laser movedir (projection of laser) G_SetMovedir (grenade->s.angles, laser->movedir); gi.linkentity (grenade); VectorMA (start, 2048, laser->movedir, end); endTrace = gi.trace (start, NULL, NULL, end, ent, MASK_SOLID); // ----------- // Setup laser // ----------- laser->movetype = MOVETYPE_NONE; laser->solid = SOLID_NOT; laser->s.renderfx = RF_BEAM|RF_TRANSLUCENT; laser->s.modelindex = 1; // must be non-zero laser->s.sound = gi.soundindex ("world/laser.wav"); laser->classname = "laser_defense"; laser->s.frame = 2 /* ent->myskills.build_lasers*/; // as it gets higher in levels, the bigger it gets. beam diameter laser->owner = laser; laser->s.skinnum = laser_colour[LASER_DEFENSE_COLOR]; laser->dmg = LASER_INITIAL_DMG+LASER_ADDON_DMG*ent->myskills.abilities[BUILD_LASER].current_level; laser->think = pre_target_laser_def_think; //laser->delay = level.time + LASER_TIMEUP; laser->health = health; laser->creator = grenade; laser->activator = ent; // start off ... target_laser_off (laser); VectorCopy (endTrace.endpos, laser->s.old_origin); // ... but make automatically come on laser -> nextthink = level.time + 2; // Set orgin of laser to point of contact with wall VectorCopy(endTrace.endpos,laser->s.origin); /* while (blip = findradius (blip, laser->s.origin, 64)) { if (!visible(laser, blip)) continue; if ( (!strcmp(blip->classname, "worldspawn") ) || (!strcmp(blip->classname, "info_player_start") ) || (!strcmp(blip->classname, "info_player_deathmatch") ) || (!strcmp(blip->classname, "item_flagreturn_team1") ) || (!strcmp(blip->classname, "item_flagreturn_team2") ) || (!strcmp(blip->classname, "misc_teleporter_dest") ) || (!strcmp(blip->classname, "info_teleport_destination") ) ) { safe_cprintf (ent, PRINT_HIGH, "Laser is too close to a spawnpoint or flag./nLaser Removed./n"); G_FreeEdict(laser); G_FreeEdict(grenade); return ; } } */ // convert normal at point of contact to laser angles vectoangles(tr.plane.normal,laser->s.angles); // setup laser movedir (projection of laser) G_SetMovedir (laser->s.angles, laser->movedir); VectorSet (laser->mins, -18, -18, -18); VectorSet (laser->maxs, 18, 18, 18);// link to world gi.linkentity (laser); ent->num_lasers++; // GHz: add to laser counter //If you use this spell, you uncloak! ent->svflags &= ~SVF_NOCLIENT; ent->client->cloaking = false; ent->client->cloakable = 0; ent->client->pers.inventory[power_cube_index] -= LASER_COST; //gi.dprintf("DEBUG: %s successfully created a laser./n", ent->client->pers.netname);}
开发者ID:zardoru,项目名称:vrxcl,代码行数:101,
示例10: Cmd_Trigger_fvoid Cmd_Trigger_f (edict_t *ent){ char *targetname; edict_t *t; int arg2; arg2 = atoi (gi.argv(2)); targetname = gi.argv(1); t = G_Find (NULL, FOFS(targetname), targetname); switch (arg2) { /* ============= Turn target off ============= */ case 1: if (!t) return; if (!strncmp(t->classname,"target_mappack_laser",sizeof("target_mappack_laser"))) { if (t->spawnflags & 1) target_laser_off (t); } if (!strncmp(t->classname,"mappack_light",sizeof("mappack_light"))) { if (!t->spawnflags & 1) { gi.configstring (CS_LIGHTS+t->style, "a"); t->spawnflags |= 1; } } break; /* ============= Turn target on ============= */ case 2: if (!t) return; if (!strncmp(t->classname,"target_satan_laser",sizeof("target_satan_laser"))) { if (t->spawnflags & 1) { } else target_laser_on (t); } if (!strncmp(t->classname,"satan_light", sizeof("satan_light"))) { if (t->spawnflags & 1) { gi.configstring (CS_LIGHTS+t->style, "m"); t->spawnflags &= ~1; } } break; /* ============= Just swap em around, or trigger em if not toggleable ============= */ default: if (!t) return; t = G_Spawn(); t->classname = "DelayedUse"; t->nextthink = level.time + 0.01; t->think = Think_Delay; t->activator = ent; t->target = gi.argv(1); break; }}
开发者ID:PBrookfield,项目名称:mpgamex86,代码行数:78,
注:本文中的target_laser_off函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ target_laser_on函数代码示例 C++ target_gdbarch函数代码示例 |