| 赞 | 4  | 
 
| VIP | 71 | 
 
| 好人卡 | 22 | 
 
| 积分 | 7 | 
 
| 经验 | 32145 | 
 
| 最后登录 | 2013-8-9 | 
 
| 在线时间 | 184 小时 | 
 
 
 
 
 
Lv2.观梦者 天仙 
	- 梦石
 - 0 
 
        - 星屑
 - 680 
 
        - 在线时间
 - 184 小时
 
        - 注册时间
 - 2008-4-15
 
        - 帖子
 - 5023
 
 
  
 
 | 
	
3楼
 
 
 楼主 |
发表于 2008-1-4 14:59:11
|
只看该作者
 
 
 
贴出脚本: 
 
主程序: 
- class Scene_NameGen
 
 -   def main
 
 -     # 产生命令窗口
 
 -     @command_window = Window_Command.new(250, ["输出为文本", "选择", "离开", "重新产生"])
 
 -     @command_window.x = 320 - @command_window.width
 
 -     @command_window.y = 240 - @command_window.height
 
 -     @command_window.z = 300
 
 -     @command_window.index = 0
 
 -     @command_window.visible = false
 
 -     @command_window.active = false
 
 -     
 
 -     # 产生询问窗口
 
 -     @ask_window = Window_Base.new(120, 188, 400, 64)
 
 -     @ask_window.contents = Bitmap.new(368, 32)
 
 -     string = "要生产哪种名称:"
 
 -     @ask_window.contents.font.name = "SimHei"
 
 -     @ask_window.contents.font.size = 24
 
 -     @ask_window.contents.draw_text(4, 0, 368, 32, string)
 
 -     @ask_window.visible = true
 
 -     @ask_window.z = 1500
 
 -     
 
 -     # 产生选择窗口
 
 -     @select_window = Window_Command.new(200, ["随机", "武器/武功", "物品", "装备", "技能"])
 
 -     @select_window.visible = true
 
 -     @select_window.active = true
 
 -     @select_window.index = 0
 
 -     @select_window.x = 270
 
 -     @select_window.y = 252
 
 -     @select_window.z = 1500
 
 -     
 
 -     @name_window = Window_NameGen.new
 
 -     @name_window.x = 0
 
 -     @name_window.y = 0
 
 -     @name_window.index = -1
 
 -     
 
 -     @name_selected = []
 
 -     # 执行过渡
 
 -     Graphics.transition
 
 -     # 主循环
 
 -     loop do
 
 -       # 刷新游戏画面
 
 -       Graphics.update
 
 -       # 刷新输入情报
 
 -       Input.update
 
 -       # 刷新画面
 
 -       update
 
 -       # 如果画面切换的话就中断循环
 
 -       if $scene != self
 
 -         break
 
 -       end
 
 -     end
 
 -     # 准备过渡
 
 -     Graphics.freeze
 
 -     # 释放窗口
 
 -     @command_window.dispose
 
 -     @ask_window.dispose
 
 -     @select_window.dispose
 
 -     @name_window.dispose
 
 -     # 如果在标题画面切换中的情况下
 
 -     if $scene.is_a?(Scene_Title)
 
 -       # 淡入淡出画面
 
 -       Graphics.transition
 
 -       Graphics.freeze
 
 -     end
 
 -   end
 
 -   
 
 -   #--------------------------------------------------------------------------
 
 -   # * 更新画面
 
 -   #--------------------------------------------------------------------------
 
 -   def update
 
 -     # 更新窗口
 
 -     @command_window.update
 
 -     @ask_window.update
 
 -     @select_window.update
 
 -     @name_window.update
 
 -     
 
 -     # 命令窗口被激活的情况下: 调用 update_command
 
 -     if @command_window.active
 
 -       update_command
 
 -       return
 
 -     end
 
  
-     # 选择窗口被激活的情况下: 调用 update_select
 
 -     if @select_window.active
 
 -       update_select
 
 -       return
 
 -     end
 
 -     
 
 -     # 选择窗口被激活的情况下: 调用 update_name
 
 -     if @name_window.active
 
 -       update_name
 
 -       return
 
 -     end
 
 -   end
 
 -   
 
 -   # 更新命令窗口
 
 -   def update_command
 
 -     # 按下 C 键的情况下
 
 -     if Input.trigger?(Input::C)
 
 -       # 演奏确定 SE
 
 -       $game_system.se_play($data_system.decision_se)
 
 -       case @command_window.index
 
 -       when 0 # 输出为文本
 
 -         @name_window.output_text
 
 -       when 1 # 选择
 
 -         @command_window.active = false
 
 -         @command_window.visible = false
 
 -         @name_window.active = true
 
 -         @name_window.index = 0
 
 -       when 2 # 离开
 
 -         exit
 
 -         #$scene = Scene_Map.new
 
 -       when 3 # 重新产生
 
 -         @command_window.visible = false
 
 -         @command_window.active = false
 
 -         @ask_window.visible = true
 
 -         @select_window.active = true
 
 -         @select_window.visible = true
 
 -         @name_window.active = true
 
 -       end
 
 -       return
 
 -     end # end if Input.trigger?(Input::C)
 
 -     
 
 -     if Input.trigger?(Input::B)
 
 -       # 演奏取消 SE
 
 -       $game_system.se_play($data_system.cancel_se)
 
 -       # 无效化命令窗口
 
 -       @command_window.visible = false
 
 -       @command_window.active = false
 
 -       @name_window.active = true
 
 -       return
 
 -     end
 
 -   end
 
 -   
 
 -   # 更新选择窗口
 
 -   def update_select
 
 -     # 按下 C 键的情况下
 
 -     if Input.trigger?(Input::C)
 
 -       # 演奏确定 SE
 
 -       $game_system.se_play($data_system.decision_se)
 
 -       # 產生名稱
 
 -       @name_window.generate(@select_window.index)
 
 -       # 无效化选择窗口
 
 -       @ask_window.visible = false
 
 -       @select_window.active = false
 
 -       @select_window.visible = false
 
 -       return
 
 -     end # end if Input.trigger?(Input::C)
 
 -   end
 
 -   
 
 -   def update_name
 
 -     # 按下 C 键的情况下
 
 -     if Input.trigger?(Input::C)
 
 -       # 演奏确定 SE
 
 -       $game_system.se_play($data_system.decision_se)
 
 -       # 纪录文字
 
 -       @name_window.input_text(@name_window.index)
 
 -       return
 
 -     end
 
 -     
 
 -     # 按下 B 键的情况下
 
 -     if Input.trigger?(Input::B)
 
 -       # 演奏取消 SE
 
 -       $game_system.se_play($data_system.cancel_se)
 
 -       # 有效化命令窗口
 
 -       @command_window.active = true
 
 -       @command_window.visible = true
 
 -       # 无效化名称产生窗口
 
 -       @name_window.active = false
 
 -       @name_window.index = -1
 
 -       return
 
 -     end
 
 -   end
 
 - end
 
  
- class Window_NameGen < Window_Selectable
 
 -   #--------------------------------------------------------------------------
 
 -   # ● 初始化窗口
 
 -   #--------------------------------------------------------------------------
 
 -   def initialize
 
 -     super(0, 0, 640, 480)
 
 -     @column_max = 4
 
 -     @item_max = 60
 
 -     @name_selected = ""
 
 -     self.index = 0
 
 -     self.contents = Bitmap.new(width - 32, height - 32)
 
 -   end
 
  
-   # 生产
 
 -   def generate(type)
 
 -     self.contents.font.color = system_color
 
 -     self.contents.clear
 
 -     i = 0
 
 -     @name = []
 
 -     
 
 -     material_1_rand = $material_1.size
 
 -     material_2_rand = $material_2.size
 
 -     color_rand = $color_name.size
 
 -     chara_rand = $chara_name.size
 
 -     pattern_rand = $pattern_name.size
 
 -     weapon_rand = $weapon_name.size
 
 -     item_rand = $item_name.size
 
 -     equip_rand = $equip_name.size
 
 -     skill_rand = $skill_name.size
 
  
-     while i < 56
 
 -       # 确认产生类型
 
 -       type = rand(4)+1 if type == 0
 
 -       case type
 
 -       when 1
 
 -         end_word = $weapon_name[rand(weapon_rand)]
 
 -       when 2
 
 -         end_word = $item_name[rand(item_rand)]
 
 -       when 3
 
 -         end_word = $equip_name[rand(equip_rand)]
 
 -       when 4
 
 -         end_word = $skill_name[rand(skill_rand)]
 
 -       end
 
 -       
 
 -       # 随机数选择文字
 
 -       mat_word_1a  = $material_1[rand(material_1_rand)]
 
 -       mat_word_2a  = $material_2[rand(material_2_rand)]
 
 -       mat_word_1b  = $material_1[rand(material_1_rand)]
 
 -       mat_word_2b  = $material_2[rand(material_2_rand)]
 
 -       color_word   = $color_name[rand(color_rand)]
 
 -       chara_word   = $chara_name[rand(chara_rand)]
 
 -       pattern_word = $pattern_name[rand(pattern_rand)]
 
 -       
 
 -       # 随机数排列
 
 -       case rand(11)
 
 -       when 0
 
 -         name_gend = mat_word_1a + mat_word_2a + color_word + chara_word + end_word
 
 -       when 1
 
 -         name_gend = mat_word_1b + mat_word_2b + color_word + chara_word + end_word
 
 -       when 2
 
 -         name_gend = mat_word_2a + mat_word_1a + color_word + chara_word + end_word
 
 -       when 3
 
 -         name_gend = mat_word_1a + mat_word_2a + mat_word_1b + mat_word_2b + color_word + chara_word + end_word
 
 -       when 4
 
 -         name_gend = mat_word_2a + pattern_word + end_word
 
 -       when 5
 
 -         name_gend = color_word + pattern_word + end_word
 
 -       when 6
 
 -         name_gend = color_word + mat_word_2a + end_word
 
 -       when 7
 
 -         name_gend = pattern_word + chara_word + end_word
 
 -       when 8
 
 -         name_gend = pattern_word + mat_word_2a + end_word
 
 -       when 9
 
 -         name_gend = chara_word + mat_word_2a + end_word
 
 -       when 10
 
 -         name_gend = mat_word_1a + mat_word_2a + mat_word_1b + end_word
 
 -       end
 
 -       
 
 -       # 显示文字
 
 -       self.contents.draw_text(i%4*160, i/4*32, 152, 32, name_gend, 0)
 
 -       @name.push(name_gend)
 
 -       # 产生下一个
 
 -       i += 1
 
 -     end
 
 -   end
 
 -   
 
 -   # 纪录文字
 
 -   def input_text(index)
 
 -     # 纪录所选择的文字
 
 -     @name_selected += @name[index] + "\n"
 
 -   end
 
 -   
 
 -   # 输出为文本
 
 -   def output_text
 
 -     # 输出
 
 -     @namefile = File.open("./NameGen.txt","w")
 
 -     @namefile.write(@name_selected)
 
 -     return
 
 -   end
 
 - end
 
 
  复制代码 
 
文字部分: 
 
- #材质1
 
 - $material_1 = ["",
 
 - "檀", "梧", "桐", "桦", "楠", "柳", "梨", "枫", "松", "柏",
 
 - "雕", "碉", "雕", "凋", "陨", "殒", "冽", "飞", "仙", "魔",
 
 - "神", "鬼", "天", "地", "阴", "阳", "古", "鱼", "龙", "鲷",
 
 - "虎", "豹", "麟", "龟", "鲸", "狼", "鹿", "貂", "燕", "雁",
 
 - "鸟", "莺", "鹦", "鹰", "鵰", "凤", "凰", "雀", "鹊", "鸿",
 
 - "蜂", "螳", "蝶", "蜘", "蛛", "蜈", "蚣", "蛇", "蟒", "蟾",
 
 - "蝉", "缨", "婴", "瑛", "一", "二", "三", "四", "五", "六",
 
 - "七", "八", "九", "十", "百", "千", "万", "亿", "兆", "霸",
 
 - "王", "帝", "皇", "狂", "冷", "绝", "明", "暗", "艳", "艳",
 
 - "热", "炎", "焰", "炎", "焱", "焰", "纤", "婵", "玉", "淑",
 
 - "圣", "盛", "胜", "烈", "列", "大", "重", "巨", "宽", "无",
 
 - "有", "仙", "腾", "刚", "柔", "太", "连", "罗", "猎", "萝",
 
 - "箩", "镙", "武", "斗", "战", "想", "动", "静", "净", "浊",
 
 - "灼", "翔", "祥", "降", "隐", "饮", "引", "飘", "漂", "极",
 
 - "追", "感", "赶", "敢", "消", "销", "霄", "宵", "萧", "嚣",
 
 - "硝", "逍", "凝", "宁", "断", "踏", "驭", "御", "驾", "破",
 
 - "毁", "怨", "恨", "希", "望", "愿", "忘", "妄", "灵", "巧",
 
 - "温", "文", "秀", "细", "风", "云", "雨", "月", "雪", "日", 
 
 - "语", "破", "卷", "卷", "圈", "遥"]
 
  
- #材质2
 
 - $material_2 = ["", 
 
 - "金", "银", "铜", "铁", "锡", "钢", "木", "藤", "藤", "根",
 
 - "干", "枝", "芽", "叶", "花", "草", "蕊", "丝", "绸", "缎",
 
 - "缕", "水", "油", "泉", "波", "浪", "冰", "晶", "月", "云",
 
 - "霞", "露", "雾", "霖", "血", "泪", "珠", "火", "炎", "焱",
 
 - "焰", "焰", "星", "雷", "电", "霆", "日", "土", "玉", "石",
 
 - "岩", "琉", "璃", "硫", "瘤", "牙", "沙", "砂", "尘", "光",
 
 - "影", "音", "氤", "韵", "蕴", "酝", "韵", "韫", "鳞", "爪",
 
 - "皮", "革", "甲", "布", "羽", "毛", "片", "目", "眼", "睛",
 
 - "精", "神", "空", "仙", "魔", "神", "鬼", "天", "地", "阴",
 
 - "阳", "男", "女", "凤", "凰", "皇", "帝", "王", "风", "笑",
 
 - "啸", "乐", "肠", "血", "灵", "魂", "魄", "骨", "肉", "筋",
 
 - "脑", "毒", "阙" ]
 
  
- #性质
 
 - $chara_name = ["",
 
 - "软", "硬", "长", "短", "宽", "窄", "广", "狭", "轻", "重",
 
 - "佛", "魔", "妖", "仙", "神", "奇", "宝", "破", "粗", "细" ]
 
  
- #颜色
 
 - $color_name = ["", 
 
 - "红", "赤", "朱", "血", "火", "绯", "橙", "橘", "黄", "金",
 
 - "绿", "碧", "青", "清", "蓝", "靛", "紫", "玄", "闇", "暗",
 
 - "黑", "白", "光", "素", "雪", "粉", "银", "虹", "彩", "艳" ]
 
  
- #花纹
 
 - $pattern_name = ["", 
 
 - "纹", "鳞", "形", "花", "样", "貌", "如", "似", "影", "音",
 
 - "吟", "吻", "舌", "尾", "首", "神", "牙" ]
 
  
- #武器/武功
 
 - $weapon_name = ["", 
 
 - "刀", "枪", "鎗", "剑", "戟", "斧", "戎", "弓", "环", "圈",
 
 - "琴", "瑟", "鼓", "刺", "勾", "钩", "钩", "爪", "抓", "挝",
 
 - "拳", "掌", "腿", "箭", "镖", "刃", "杖", "棍", "棒", "铲",
 
 - "钯", "尺", "匕", "笔", "叉", "轰", "雷", "殳", "针", "鞭",
 
 - "鐗", "弩", "矛", "盾", "釽", "钺", "功", "法", "手", "诀",
 
 - "劲", "经", "咒" ]
 
  
- #物品
 
 - $item_name = ["", 
 
 - "药", "丸", "散", "胶", "汤", "丹", "茶", "酒", "露", "果",
 
 - "粉", "脂", "粥", "糕", "膏", "饮", "草", "蜜", "香", "精",
 
 - "箭", "镖", "匕", "毒", "镖", "针", "剑", "刀", "爪", "吻", 
 
 - "舌", "花", "鳞", "环", "符", "咒", "珠", "铃", "蛊", "羽",
 
 - "钉", "芒", "石", "砂", "沙", "煞", "杀", "痧", "硝", "销",
 
 - "锁", "根", "水", "油", "草", "芽", "胆", "葵", "玉", "髓",
 
 - "蜕", "退", "藤", "藤", "絮", "火", "涎", "绫", "翎", "丝",
 
 - "皮", "木", "目", "晶", "睛", "瞳", "线", "炭", "金", "星",
 
 - "蕊", "刺", "莿", "液", "齿", "牙", "爪", "酮", "醇", "壳",
 
 - "矿", "骨", "糊", "瑚", "弧", "壶"]
 
  
- # 装备
 
 -   # 第一组是头部
 
 -   # 第二组是身体
 
 -   # 第三组是足部
 
 -   # 第四组是饰品
 
 - $equip_name = ["", 
 
 - "帽", "盔", "冠", "顶", "带", "巾", "襟", "帼", "丝", "帕",
 
 - "簪", "翎", "绫", "莎", "纱", 
 
  
- "裳", "衣", "装", "铠", "甲", "衫", "缕", "披", "风", "氅",
 
 - "罗", "裙", "裤", "毡", "褂", "袍", 
 
  
- "靴", "鞋", "履", "屐", "轮", "踏", 
 
  
- "扣", "铃", "牌", "指", "扳", "佩" ]
 
  
- # 技能
 
 - $skill_name = ["", 
 
 - "咒", "法", "术", "方", "门", "操", "气", "闪", "破", "败", 
 
 - "界", "结", "体", "避", "闭", "毕", "壁", "碧", "锋", "封",
 
 - "定", "禁", "狂", "爆", "暴", "息", "宁", "生", "隐", "飞", 
 
 - "袭", "障", "瘴", "毒", "流", "派", "道", "魔", "功", "夺"]
 
 
  复制代码 |   
 
 
 
 |