(原)War3 脚本分析3-main函数

  main函数为脚本的第二个入口函数(在此之前我们分析过一个负责房间规则的config函数),负责这个场景规则的初始化工作,下面以人族无敌的main函数作为案例分析下脚本的初始化流程:

 1 //***************************************************************************
 2 //*
 3 //*  Main Initialization
 4 //*
 5 //***************************************************************************
 6 
 7 //===========================================================================
 8 function main takes nothing returns nothing
 9         // 设置相机参数
10     call SetCameraBounds( -7424.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), -7680.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM), 7424.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), 7168.0 - GetCameraMargin(CAMERA_MARGIN_TOP), -7424.0 + GetCameraMargin(CAMERA_MARGIN_LEFT), 7168.0 - GetCameraMargin(CAMERA_MARGIN_TOP), 7424.0 - GetCameraMargin(CAMERA_MARGIN_RIGHT), -7680.0 + GetCameraMargin(CAMERA_MARGIN_BOTTOM) )
11     // 设置地表和模型的光照方案
12     call SetDayNightModels( "Environment\\DNC\\DNCLordaeron\\DNCLordaeronTerrain\\DNCLordaeronTerrain.mdl", "Environment\\DNC\\DNCLordaeron\\DNCLordaeronUnit\\DNCLordaeronUnit.mdl" )
13     // 设置环境音效
14     call NewSoundEnvironment( "Default" )
15     // 设置白天音效
16     call SetAmbientDaySound( "LordaeronSummerDay" )
17     // 设置夜晚音效
18     call SetAmbientNightSound( "LordaeronSummerNight" )
19     // 设定音乐列表 (使用随机的开始音乐)
20     call SetMapMusic( "Music", true, 0 )
21     // 初始化音效
22     call InitSounds(  )
23     // 创建区域
24     call CreateRegions(  )
25     // 创建相机
26     call CreateCameras(  )
27     // 创建所有物品
28     call CreateAllItems(  )
29     // 创建所有对象
30     call CreateAllUnits(  )
31     // 初始化公共基础信息
32     call InitBlizzard(  )
33     // 初始化全局变量
34     call InitGlobals(  )
35     // 初始化触发器
36     call InitCustomTriggers(  )
37     // 场景初始化
38     call RunInitializationTriggers(  )
39 
40 endfunction


  整个的初始化流程比较清晰,其中InitBlizzard、InitCustomTriggers和RunInitialtionTriggers三个函数需要重点分析。本篇随便就到此结束吧。

转载于:https://www.cnblogs.com/FireStudio/archive/2012/06/05/2536846.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值