Skip to content
View in the app

A better way to browse. Learn more.

主视角中国

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

moh8888

网站版主
  • 注册时间

  • 上次访问

由 moh8888 发表的全部内容

  1. moh8888 回复 moh8888 的 主题 于 硝烟里的年华
    谢谢! 从.SCR看好象没有用USE键上下TANK的程序.晚上试.... 俺研究一下,其实俺这个程序是从原来本站的TANK3.1PK3上摘下经过一定的改动,总有一点毛病.... 类型1是TANK,类型2是JEEP 现放在单人图的M113B里,总的说还可以,慢慢来吧...
  2. moh8888 回复 moh8888 的 主题 于 硝烟里的年华
    下TANK的程序: //------------------------------------ gettingout: self fullstop self notsolid self.collisionent notsolid println (" player getting out of " + self ) local.origin = local.player.origin + (50 50 100) local.player.origin = local.origin switch(self.type) { case 1: self detachdriverslot 0 local.player // (self.origin + self.forwardvector * -500 ) //( self.origin + ( -500 200 500 )) //self.gun = self queryturretslotentity 0 self detachturretslot 0 self.gun.origin local.gunangles = self.gun.angles self.gun remove wait 1 //self spawnturret 0 self.turret1 //self.gun = self queryturretslotentity 0 //if((self.projectile !=nill)||(self.projectile != null)) //self.gun dmprojectile self.projectile break case 2: self detachdriverslot 0 (self.origin + self.forwardvector * -300) //( self.origin + ( 200 200 10 )) self.driver.viewangles= ( 0 0 0 ) self.gun = self queryturretslotentity 0 self detachturretslot 0 self.gun.origin self.gun remove wait 1 self spawnturret 0 self.turret1 self.gun = self queryturretslotentity 0 if((self.projectile !=nill)||(self.projectile != null)) self.gun dmprojectile self.projectile self.gun removeimmune bullet self.gun removeimmune fast_bullet self.gun removeimmune shotgun self.gun removeimmune grenade self.gun removeimmune rocket self.gun removeimmune explosion self.gun removeimmune crush self.gun removeimmune falling self.gun removeimmune vehicle if(self.type==3) self.gun hide break } local.player physics_on local.player show releaseplayer cueplayer local.player solid local.player takedamage local.player removeimmune bash local.player removeimmune bullet local.player removeimmune fast_bullet local.player removeimmune shotgun local.player removeimmune grenade local.player removeimmune rocket local.player removeimmune explosion local.player removeimmune crush local.player removeimmune falling local.player removeimmune vehicle wait 2 self.gun = self queryturretslotentity 0 if (self.gun) { self.gun.angles = local.gunangles self.gun solid self.gun rendereffects "-shadow" } wait 1 self.driver = NULL self.inuse = 0 end
  3. moh8888 回复 moh8888 的 主题 于 硝烟里的年华
    startvehicleinit: level.debug=1 self unlock self unlockmovement self.captured = 0 self.hasdriver = 0 self.driver=null self.speed = 400 self.maxspeed = self.speed self vehiclespeed self.speed self removeondeath 0 self.health = 1000 self rendereffects "-shadow" self solid self takedamage self.drivable = 1 self removeimmune bash self removeimmune bullet self removeimmune fast_bullet self removeimmune shotgun self removeimmune grenade self removeimmune rocket self removeimmune explosion self removeimmune crush self removeimmune falling self removeimmune vehicle if(self.type==2) self vehicleanim add_surfaces self.gun = self queryturretslotentity 0 if(self.turret1) { self.gun = self queryturretslotentity 0 self unlock self.gun unlock self detachturretslot 0 self.gun.origin self.gun remove self spawnturret 0 self.turret1 self.gun = self queryturretslotentity 0 if((self.projectile !=nill)||(self.projectile != null)) self.gun dmprojectile self.projectile //self.gun pitchcaps ( -10 10 0) //self.gun maxyawoffset 50 //self.gun yawcenter 0 self.gun takedamage self.gun solid self.gun rendereffects "-shadow" self.gun removeimmune bash self.gun removeimmune bullet self.gun removeimmune fast_bullet self.gun removeimmune shotgun self.gun removeimmune grenade self.gun removeimmune rocket self.gun removeimmune explosion self.gun removeimmune crush self.gun removeimmune falling self.gun removeimmune vehicle } local.t2 = self queryturretslotentity 1 if (local.t2) local.t2 remove self notsolid if (self.target) { self.collisionent = self.target // self.collisionent notsolid self.collisionent removeimmune bullet self.collisionent removeimmune fast_bullet self.collisionent removeimmune shotgun self.collisionent removeimmune grenade self.collisionent removeimmune rocket self.collisionent removeimmune explosion self.collisionent removeimmune crush self.collisionent removeimmune falling self.collisionent removeimmune vehicle } self removeimmune bash self removeimmune bullet self removeimmune fast_bullet self removeimmune shotgun self removeimmune grenade self removeimmune rocket self removeimmune explosion self removeimmune crush self removeimmune falling self removeimmune vehicle thread tankpain thread waitfordeath thread waitforplayer end //*************************************************************************************************************** running: exec global/playervehiclesound.scr println " running sound script " if(level.debug==1) { while(self) { println (" I am running "+ self.targetname) println (" My type is "+ self.type) println (" My damage model is "+ self.damagemdl) println (" My turret1 is "+ self.turret1) println (" My turret2 is "+ self.turret2) println (" My driver is "+ self.driver) println (" hasdriver= "+ self.hasdriver) wait 6 } } end //*************************************************************************************************************** waitforplayer: while(isalive self) { if !(self) end local.fov = 120 local.usedistance = 200 for(local.playr=1;local.playr { local.distance = vector_length ($player[local.playr].origin - self.origin) if (($player[local.playr].useheld == 1)&&($player[local.playr].invehicle != 1)) { $player[local.playr].invehicle=1 while($player[local.playr].useheld==1) // wait for player to let go of use key waitframe if(self.hasdriver!=1) self thread usevehicle $player[local.playr] } //wait 1 } wait 1 } end //********************************************************************************************************** usevehicle local.player: println " I got to here usevehicle " self.hasdriver=1 self.driver=local.player //self.driver notsolid self attachdriverslot 0 self.driver switch(self.type) { case 1: self.driver hide local.player perferredweapon "88mm Tank Gun" break case 2: self.driver perferredweapon ".30cal Machine Gun" break } println (self + " is waiting for player to get out ") local.player = parm.other while ((IsAlive self) && (self.health > 0) && (self.hasdriver == 1)) // && (self.driver.dmteam == local.dmteam ) && (isalive self.driver) && (self.driver.useheld == 0)) { if(local.player.useheld == 1) // wait for player to let go of use key { local.starttime = level.time local.time = 0 while ((local.player!=NULL) && (IsAlive self) && (local.player.useheld == 1) && (local.time { wait .1 local.time ++ } if (local.time > 1) { println " getting out of vehicle " self waitthread gettingout } waitframe } thread debugtext ("ENDTHREAD waitfortank = " + self) end //------------------------------------ gettingout: self fullstop self notsolid self.collisionent notsolid println (" player getting out of " + self ) local.origin = local.player.origin + (50 50 100) local.player.origin = local.origin switch(self.type) { case 1: self detachdriverslot 0 local.player // (self.origin + self.forwardvector * -500 ) //( self.origin + ( -500 200 500 )) //self.gun = self queryturretslotentity 0 self detachturretslot 0 self.gun.origin local.gunangles = self.gun.angles self.gun remove wait 1 //self spawnturret 0 self.turret1 //self.gun = self queryturretslotentity 0 //if((self.projectile !=nill)||(self.projectile != null)) //self.gun dmprojectile self.projectile break case 2: self detachdriverslot 0 (self.origin + self.forwardvector * -300) //( self.origin + ( 200 200 10 )) self.driver.viewangles= ( 0 0 0 ) self.gun = self queryturretslotentity 0 self detachturretslot 0 self.gun.origin self.gun remove wait 1 self spawnturret 0 self.turret1 self.gun = self queryturretslotentity 0 if((self.projectile !=nill)||(self.projectile != null)) self.gun dmprojectile self.projectile self.gun removeimmune bullet self.gun removeimmune fast_bullet self.gun removeimmune shotgun self.gun removeimmune grenade self.gun removeimmune rocket self.gun removeimmune explosion self.gun removeimmune crush self.gun removeimmune falling self.gun removeimmune vehicle if(self.type==3) self.gun hide break } local.player physics_on local.player show releaseplayer cueplayer local.player solid local.player takedamage local.player removeimmune bash local.player removeimmune bullet local.player removeimmune fast_bullet local.player removeimmune shotgun local.player removeimmune grenade local.player removeimmune rocket local.player removeimmune explosion local.player removeimmune crush local.player removeimmune falling local.player removeimmune vehicle wait 2 self.gun = self queryturretslotentity 0 if (self.gun) { self.gun.angles = local.gunangles self.gun solid self.gun rendereffects "-shadow" } wait 1 self.driver = NULL self.inuse = 0 end } end //*************************************************************************************************************** waitfordeath: self waittill death self.inuse = 1 thread tankexplode end //*************************************************************************************************************** tankpain: local.original_health = self.health local.previoushealth = self.health local.paintime = level.time while (self) { if(self.health end if (self.health { switch(self.type) { case 1: self playsound damage_tank exec global/earthquake.scr .2 4 0 0 break case 2: self playsound opeltruck_damage exec global/earthquake.scr .2 2 0 0 break } if ( (self.health (local.paintime + 5) ) ) { local.paintime = level.time local.health_fraction = (self.health / local.original_health) local.newspeed = self.speed * local.health_fraction if (local.newspeed local.newspeed = 0 self.maxspeed = local.newspeed self vehiclespeed self.maxspeed if (local.health_fraction >= 0.666) { self playsound tank_hurt1 self waitthread tankdamage 1 } else if (local.health_fraction >= 0.333) { self playsound tank_hurt1 self waitthread tankdamage 2 } else { self playsound tank_hurt1 self waitthread tankdamage 3 } } local.previoushealth = self.health } wait .1 } end //*************************************************************************************************************** tankdamage local.smoke: switch(self.type) { case 1: self thread spawn_fx "fx/fx_tank_explosion.tik" self playsound explode_tank thread jitter_large 0 // make the screen shake break case 2: self thread spawn_fx "fx/fx_bike_explosion.tik" self playsound explode_bike1 thread jitter_large 0 // make the screen shake break } if (local.smoke == 3) // turret { self.smoke3o = spawn script_origin self.smoke3o.origin = self.origin self.smoke3 = spawn "models/emitters/linger_smoke.tik" self.smoke3 notsolid self.smoke3 anim start switch(self.type) { case 1: self.smoke3.origin = (self.origin + ( -40 0 130) ) break case 2: case 3: self.smoke3.origin = (self.origin + ( -40 0 80) ) break } self.smoke3 bind self.smoke3o self.smoke3o glue self } else if (local.smoke == 2) // front { self.smoke2o = spawn script_origin self.smoke2o.origin = self.origin self.smoke2 = spawn "models/emitters/linger_smoke.tik" self.smoke2 notsolid self.smoke2 anim start switch(self.type) { case 1: self.smoke2.origin = (self.origin + ( 100 50 60) ) break case 2: case 3: self.smoke2.origin = (self.origin + ( 100 30 30) ) break } self.smoke2 bind self.smoke2o self.smoke2o glue self } else // back { self.smoke1o = spawn script_origin self.smoke1o.origin = self.origin self.smoke1 = spawn "models/emitters/linger_smoke.tik" self.smoke1 notsolid self.smoke1 anim start switch(self.type) { case 1: self.smoke1.origin = (self.origin + ( -200 -50 60) ) break case 2: case 3: self.smoke1.origin = (self.origin + ( -120 -30 30) ) break } self.smoke1 bind self.smoke1o self.smoke1o glue self } end //*************************************************************************************************************** tankexplode: self stop //self.destroyed = 1 local.origin = self.origin local.angles = self.angles self.gun2 = self QueryTurretSlotEntity 1 if (self.gun2) { local.po = self.gun2.origin local.po[2] = local.po[2] + 50 local.t2exp = spawn script_origin local.t2exp.origin = local.po local.t2exp.angles = local.angles switch(self.type) { case 1: local.t2exp thread spawn_fx "fx/fx_tank_explosion.tik" 3 local.t2exp playsound explode_tank radiusdamage local.t2exp.origin 200 200 break case 2: local.t2exp thread spawn_fx "fx/fx_bike_explosion.tik" local.t2exp playsound explode_bike1 radiusdamage local.t2exp.origin 100 100 break } local.fire2 = spawn script_origin local.fire2.origin = local.po local.fire2.angles = local.angles local.fire2 thread spawn_fx "models/emitters/fire.tik" wait 1 } self.gun = self QueryTurretSlotEntity 0 if (self.gun) { //local.po = self.gun.origin //local.po[2] = local.po[2] + 100 //local.exp = spawn script_origin //local.exp.origin = local.po //local.exp.angles = local.angles //switch(self.type) //{ //case 1: //local.exp thread spawn_fx "fx/fx_tank_explosion.tik" //5 //local.exp playsound explode_tank //radiusdamage local.exp.origin 500 200 //break //case 2: //case 3: //local.exp thread spawn_fx "fx/fx_bike_explosion.tik" //local.exp playsound explode_bike1 //radiusdamage local.exp.origin 300 100 //break //} self.gun unlock local.po = self.gun.origin local.po[2] = local.po[2] + 0 local.fire = spawn script_origin local.fire.origin = local.po local.fire.angles = local.angles local.fire thread spawn_fx "models/emitters/fire.tik" wait 1 } local.exp2 = spawn script_origin local.exp2.origin = local.origin local.exp2.angles = local.angles //local.exp2 thread spawn_fx"fx/fx_tank_explosion.tik" 3 local.exp2 playsound explode_tank radiusdamage local.exp2.origin 1000 200 if (self.hasdriver == 1) { self.hasdriver=0 self.gun = self queryturretslotentity 0 self detachturretslot 0 self.gun.origin self.gun remove self detachdriverslot 0 (self.origin + ( 0 0 300)) self spawnturret o self.turret1 self.gun = self queryturretslotentity 0 self.driver show self.driver thread bhit 1000 -1 } if (self.hasgunner == 1) { self.hasgunner=0 self.gun2 = self queryturretslotentity 1 self detachturretslot 1 self.gun2.origin self.gun2 remove self spawnturret 1 self.turret2 self.gun2 = self queryturretslotentity 1 self.gunner show self.gunner thread bhit 1000 -1 } iprintlnbold (self + " has been destroyed.") if(self.type==1) { thread jitter_large 0 self notsolid self.gun notsolid self.gun2 notsolid local.dam = spawn script_model model self.damagemdl local.dam.origin = self.origin local.dam.angles = self.angles self remove //self.gun remove //self.gun2 remove local.temp = randomint 3 if (local.temp == 0) local.model_type = "human/german_panzer_grenadier.tik" if (local.temp == 1) local.model_type = human/german_panzer_obershutze if (local.temp == 2) local.model_type = human/german_panzer_tankcommander local.ent = spawn local.model_type local.ent notsolid local.ent.origin = (self.origin + ( 0 0 100 )) local.ent.angles = self.angles local.ent noticescale 1 local.ent sight 4500 local.ent mindist 2024 local.ent maxdist 2448 local.ent leash 10000 local.ent dontdropweapons local.ent exec global/disable_ai.scr local.ent notsolid local.randomdie = randomint(4) switch(local.randomdie) { case 0: local.ent anim_noclip tank_exit_1 local.ent waittill animdone break case 1: local.ent anim_noclip tank_exit_2 local.ent waittill animdone local.ent.position = "crawl" break case 2: local.ent anim_noclip tank_exit_3 local.ent waittill animdone local.ent.health = 45 break case 3: local.ent anim_noclip tank_exit_4 local.ent waittill animdone local.ent bedead end } wait .7 local.ent solid local.ent exec global/enable_ai.scr local.col = spawn script_origin local.col.origin = local.po local.col.angles = local.angles local.col thread spawn_fx "fx/gas_mushroom_column.tik" 5 local.col playsound explode_tank radiusdamage local.col.origin 500 200 wait 5 } if((self.type==2)||(self.type==3)) { self vehicleanim remove_surfaces self notsolid local.ang=self.angles local.ang[2]=20 self.angles = local.ang self.origin = local.jeep_org self.smoke = spawn "models/emitters/linger_smoke.tik" self.smoke notsolid self.smoke anim start self.smoke.origin = (self.origin + (0 0 60)) //self.smoke glue self } local.po = spawn script_origin local.po = local.origin local.po[2] = local.po[2] + 750 local.mush = spawn script_origin local.mush.origin = local.po local.mush.angles = local.angles if(self.type==1) local.mush thread spawn_fx "fx/gas_mushroom_cloud.tik" 5 else local.mush thread spawn_fx "fx/gas_mushroom_cloud.tik" .5 end //************************************************************************************************************************************** // bullet hit command // bhit [damage| 40 default] [body location| default is chest, -1 is random] [direction| vector] [force to apply| 15 default] //************************************************************************************************************************************** bhit local.damage local.location local.direction local.force: if (local.damage == NIL || local.damage == 0) { local.damage = 40 } if (local.location == NIL) { local.location = 3 } else if (local.location == -1) { local.temp = (randomint 17 + 1) local.location = local.temp } if (local.direction == NIL || local.direction == 0) { local.direction = (0 -1 0) } if (local.force == NIL) { local.force = 15 } //*** set the characters script_damage variable so the player doesn't lose the level self.script_damage = 1 //*** damage the target self exec global/bullethit.scr local.direction local.damage local.force local.location self playsound snd_bh_flesh self.script_damage = 0 end //*************************************************************************************************************** spawn_fx local.fx local.scale: local.temp = spawn script_model model local.fx scale local.scale local.temp.origin = self.origin local.temp anim start wait 5 local.temp remove end //*************************************************************************************************************** spawn_damaged local.model: local.damaged = spawn script_model model local.model local.damaged.origin = self.origin local.damaged.angles = self.angles self.smoke = spawn "models/emitters/linger_smoke.tik" self.smoke notsolid self.smoke anim start self.smoke.origin = (self.origin + (0 0 80)) //self.smoke glue self end //*************************************************************************************************************** //****************************** // jitter large effect // jitter_large [delay] //****************************** jitter_large local.time: if (local.time) wait local.time waitexec global/earthquake.scr .35 10 0 0 waitexec global/earthquake.scr .23 6 0 0 waitexec global/earthquake.scr 1 1 0 0 waitexec global/earthquake.scr 1.25 .3 0 1 end //***************************************************************************************************************
  4. moh8888 回复 moh8888 的 主题 于 硝烟里的年华
    这2天俺正改俺愿来的TANK程序,只是下TANK后变成无敌的了...
  5. moh8888 回复 moh8888 的 主题 于 硝烟里的年华
    .map图中有一个如下程序 { "scale" "1.0" "classname" "vehicle_german_kingtigertank" "model" "vehicles/allied_kingtank.tik" "testanim" "idle" "targetname" "alliedtank" "origin" "-1820.00 4564.00 -16.00" "target" "kingtigertankcollision" "$trigger" "alliedtanktrigger" } 俺想按它原稿的名称加到.SCR中,就是说,在.SCR中 可以用原稿的一切程序,比如这个TANK是可开的... 如何加? 程序是? 谢谢!
  6. 俺想问你用什么软件测的速度呀? THX!
  7. 俺没有找到火车的车箱路经.........火车头找到了 想搞一个在动的环境里作战....
  8. moh8888 回复 moh8888 的 主题 于 硝烟里的年华
    训练关的门加上unLOCK就可以了, 看来是改不了了....
  9. moh8888 发表 1 个主题 于 硝烟里的年华
    dsp文件转换成.map文件后俺用MOHAATOOL打开后是些网状的3D图, 看到了一些士兵的坐标和可打开的门,.... 能打开的门有一个角度,而且可在.SCR中找到名称 俺的问题是那些没有任何标记的门,可能是打不开的,怎么打开呢? 谢谢!
  10. ha,想当队长了?可要给兄弟们发工资呀!....
  11. moh8888 发表 1 个主题 于 硝烟里的年华
    将M211.DSP放在MAPS/下 V0.9地图名为M211 这里下载:
  12. 要是你觉得那M42机枪很烦,想去掉,可以用这个PK3 俺是偶尔一次改武器的TIK,发现的, 打包成PK3公布.. 请放到MOHAA-----MAIN/下 下载地址: http://skyy.net.ru/pic/upload/S200410229480.rar
  13. 那些单人脚本,俺都运行快2个星期了都没问题呀... 还有什么办法吗?
  14. 88

    moh8888 回复 cccp250 的 主题 于 硝烟里的年华
    服务器近期有点问题,象是有病毒...或被人功击......
  15. 见S_22教学,发挥你的修改天才....
  16. 独立服务器是指用安装版建SERVER吗? 那样的话,要有一条件: 就是服务器和客户端要将M111.DSP(服务器,客户端),M111.SCR(服务器)文件, 放在MAIN/MAPS/DM/下才可以...
  17. 最新的是M511B,俺今晚试试.... 谢谢
  18. 俺的V0.9起动后,不到半小时就自动退出,不知是那的问题? 俺有2个硬盘,换那一块,也一样这说明系统(XP)没问题! 不知如何解决? THANK!
  19. 能进!用安装版搜索到进, 现在不是这个问题, 俺的V0.9起动后,不到半小时就自动退出,不知是那的问题? 俺有2个硬盘,换那一块,也一样这说明系统没问题! 不知如何解决?

Account

Navigation

搜索

搜索

设置浏览器推送通知

Chrome(安卓)
  1. 点击地址栏旁边的锁形图标。
  2. 点击 权限 → 通知
  3. 根据需要调整通知设置。
Chrome(桌面)
  1. 点击地址栏中的锁形图标。
  2. 选择 网站设置
  3. 找到 通知,然后根据需要调整设置。