Project1

标题: 怎么讲别人不能粘贴的脚本合法粘贴到脚本里 [打印本页]

作者: 逆向刺杀者    时间: 2014-4-13 14:10
标题: 怎么讲别人不能粘贴的脚本合法粘贴到脚本里

比如喵呜喵5大人的脚本合集里,直接把脚本复制下来是不行的,只能在帖子上弄代码复制才可以,例如这几个
RUBY 代码复制
  1. =begin
  2. ===============================================================================
  3.   视觉小说 By喵呜喵5
  4. ===============================================================================
  5.  
  6. 【说明】
  7.  
  8.   滚动文字变成视觉小说模式,支持对话中使用的转义字符“\.”、“\!”等  
  9.   本质上不过是修改了传统的文字对话框,将其大小变为全屏幕罢了……
  10.   
  11.   使用的时候先用事件指令中的脚本输入“m5_novel”(不包含双引号),
  12.   然后输入滚动文字  
  13.   实际运行的时候就会以视觉小说的形式显示出来
  14.   (切换对话请使用转义字符“\!”)
  15.   
  16.   因为是初版,并没有添加太多的功能,之后有时间可能会对这个脚本进行优化吧
  17.   
  18. =end
  19. #==============================================================================
  20. # 脚本部分
  21. #==============================================================================  
  22. class Window_Message
  23.   alias m5_update_placement update_placement
  24.   def update_placement
  25.     @position = $game_message.position
  26.     if @position == 3
  27.       self.width = Graphics.width
  28.       self.height = Graphics.height
  29.       self.x = 0
  30.       self.y = 0
  31.     else
  32.       self.width = m5_window_width
  33.       self.height = m5_window_height
  34.       m5_update_placement
  35.     end
  36.   end
  37.   alias m5_need_new_page? need_new_page?
  38.   def need_new_page?(text, pos)
  39.     if @position == 3
  40.       return (pos[:y] + pos[:height] > (Graphics.height - standard_padding * 2)\
  41.       && !text.empty?)
  42.     else
  43.       return m5_need_new_page?(text, pos)
  44.     end    
  45.   end
  46.   alias m5_initialize initialize
  47.   def initialize
  48.     m5_initialize
  49.     self.width = m5_window_width
  50.     self.height = m5_window_height
  51.   end
  52.   alias m5_window_width window_width
  53.   def window_width
  54.     Graphics.width
  55.   end
  56.   alias m5_window_height window_height
  57.   def window_height
  58.     Graphics.height
  59.   end
  60. end
  61. class Game_Interpreter
  62.   def m5_novel
  63.     index,list = @index,@list
  64.     if list[index+1].code == 105
  65.       list[index+1].code = 101
  66.       list[index+1].parameters = ["",0,2,3]
  67.       index += 2      
  68.       while list[index].code == 405
  69.         list[index].code = 401        
  70.         index += 1
  71.       end      
  72.     end
  73.   end
  74. end

RUBY 代码复制
  1. =begin
  2. ===============================================================================
  3.   对话框光标 By喵呜喵5
  4. ===============================================================================
  5.  
  6. 【说明】
  7.  
  8.   允许使用任意图片作为对话框下一句提示的光标  
  9.   
  10. =end
  11. $m5script = {} if $m5script.nil?
  12. $m5script["M5MessageCursor"] = true
  13. module M5MessageCursor
  14. #==============================================================================
  15. # 设定部分
  16. #==============================================================================
  17.  
  18.   FILENAME = "Cursor"
  19.   #光标图片的文件名,放到Graphics\System文件夹下
  20.   
  21.   FRAME = 4
  22.   #光标图片的帧数,只有一张图片并且不需要动画效果这里填写1就好了
  23.   
  24.   DURA = 10
  25.   #光标播放动画效果时每张图片的持续时间
  26.   
  27.   POS1 = [491,387]
  28.   #对话框居下时光标的[X,Y]坐标
  29.   
  30.   POS2 = [491,239]
  31.   #对话框居中时光标的[X,Y]坐标
  32.   
  33.   POS3 = [491,91]
  34.   #对话框居上时光标的[X,Y]坐标
  35.   
  36.   Z = 201
  37.   #光标的Z坐标,当光标遮住某些窗口时请尝试修改这里
  38.   
  39.   SWI = 1
  40.   #对应ID的开关打开的时候,不显示光标
  41.   
  42. #==============================================================================
  43. # 设定结束
  44. #==============================================================================
  45. #==============================================================================
  46. # 脚本部分
  47. #==============================================================================
  48. end
  49. #--------------------------------------------------------------------------
  50. # ● 光标精灵的类
  51. #--------------------------------------------------------------------------
  52. class Sprite_MessageCursor < Sprite_Base
  53.   #--------------------------------------------------------------------------
  54.   # ●载入
  55.   #--------------------------------------------------------------------------
  56.   include M5MessageCursor
  57.   def initialize
  58.     @viewport = Viewport.new(-Graphics.width/2, -Graphics.height/2
  59.       Graphics.width*2, Graphics.height*2)
  60.     @viewport.z = Z
  61.     super(@viewport)
  62.     self.bitmap = Cache.system(FILENAME)
  63.     self.visible = false
  64.     update_placement
  65.     @duration = @frame = 0
  66.     @width = self.bitmap.width / FRAME
  67.     update
  68.   end
  69.   #--------------------------------------------------------------------------
  70.   # ●设置位置
  71.   #--------------------------------------------------------------------------
  72.   def update_placement(pos = 2)
  73.     self.x,self.y = pos == 2 ? POS1 : (pos == 1 ? POS2 : POS3)
  74.     self.x += Graphics.width/2
  75.     self.y += Graphics.height/2
  76.   end
  77.   #--------------------------------------------------------------------------
  78.   # ●释放
  79.   #--------------------------------------------------------------------------
  80.   def dispose
  81.     @viewport.dispose
  82.     super
  83.   end
  84.   #--------------------------------------------------------------------------
  85.   # ● 更新动画效果
  86.   #--------------------------------------------------------------------------
  87.   def update
  88.     super
  89.     if self.visible
  90.       hide if $game_switches[SWI]    
  91.       if @duration > 0
  92.         @duration -= 1
  93.       else
  94.         self.src_rect.set(@frame * @width, 0, @width, self.bitmap.height)
  95.         @duration = DURA
  96.         @frame = (@frame == FRAME-1) ? 0 : @frame +1
  97.       end
  98.     end
  99.   end
  100.   #--------------------------------------------------------------------------
  101.   # ● 显示光标
  102.   #--------------------------------------------------------------------------
  103.   def show
  104.     self.visible = true
  105.   end
  106.   #--------------------------------------------------------------------------
  107.   # ● 隐藏光标
  108.   #--------------------------------------------------------------------------
  109.   def hide
  110.     self.visible = false    
  111.   end
  112.   #--------------------------------------------------------------------------
  113.   # ● 是否显示?
  114.   #--------------------------------------------------------------------------
  115.   def need_show?
  116.     return false if $game_switches[SWI]
  117.     !self.visible
  118.   end
  119. end
  120. #--------------------------------------------------------------------------
  121. # ●对话框的类
  122. #--------------------------------------------------------------------------
  123. class Window_Message
  124.   #--------------------------------------------------------------------------
  125.   # ● 载入光标精灵
  126.   #--------------------------------------------------------------------------
  127.   alias m5_20140305_initialize initialize
  128.   def initialize
  129.     m5_20140305_initialize
  130.     @message_cursor = Sprite_MessageCursor.new
  131.   end
  132.   #--------------------------------------------------------------------------
  133.   # ● 释放光标精灵
  134.   #--------------------------------------------------------------------------
  135.   alias m5_20140305_dispose dispose
  136.   def dispose
  137.     m5_20140305_dispose
  138.     @message_cursor.dispose
  139.   end
  140.   #--------------------------------------------------------------------------
  141.   # ● 更新光标精灵
  142.   #--------------------------------------------------------------------------
  143.   alias m5_20140305_update update
  144.   def update
  145.     m5_20140305_update
  146.     @message_cursor.update
  147.     @message_cursor.show if self.pause && self.open? && @message_cursor.need_show?
  148.     @message_cursor.hide if @message_cursor.visible and 
  149.     ((!self.pause && self.open? && @message_cursor.visible) or $game_switches[M5MessageCursor::SWI])    
  150.   end
  151.   #--------------------------------------------------------------------------
  152.   # ● 更新光标位置
  153.   #--------------------------------------------------------------------------
  154.   alias m5_20140305_update_placement update_placement
  155.   def update_placement
  156.     m5_20140305_update_placement
  157.     @message_cursor.update_placement(@position)
  158.   end
  159. end

RUBY 代码复制
  1. =begin
  2. ===============================================================================
  3.  对话显示姓名 By喵呜喵5
  4. ===============================================================================
  5.  
  6. 【说明】
  7.  
  8. 通过在对话中加入
  9.  
  10. \name[姓名]
  11.  
  12. 则可以在对话中显示姓名,通过修改设定部分的设定乃至修改脚本可以让这个姓名显示脚本看起
  13. 来更漂亮一些
  14. 实在不会修改的话,默认的样式应该也还过得去吧……
  15.  
  16.  
  17. =end
  18. module M5Name
  19. #==============================================================================
  20. #  设定部分
  21. #==============================================================================
  22.  
  23.   LINE = 4
  24.   #文章显示的行数,姓名框会占用一行
  25.   
  26.   FONT = ["黑体"]
  27.   #姓名所使用的字体
  28.   
  29.   SIZE = 20
  30.   #姓名字体的大小,不建议超过你默认的文字大小,不然会发生奇怪的换页……
  31.   
  32.   COLOR = Color.new(0,0,0, 210)
  33.   #姓名的颜色,四个数值分别是R、G、B以及透明度
  34.   
  35.   BOLD = false
  36.   #姓名是否加粗
  37.   
  38.   ITALIC = false
  39.   #姓名是否斜体
  40.   
  41.   SHADOW = false
  42.   #姓名是否有阴影
  43.   
  44.   OUT = true
  45.   #姓名是否加边框
  46.   
  47.   OUT_COLOR = Color.new(255, 255, 255, 100)
  48.   #姓名边框的颜色,四个数值分别是R、G、B以及透明度
  49.   
  50.   ALIGN =  0
  51.   #姓名的对齐方式,0,1,2分别是居左、居中、居右
  52.  
  53.   COLOR1 = Color.new(255, 255, 255, 128)
  54.   #姓名的背景框左边的颜色,四个数值分别是R、G、B以及透明度
  55.   #有能力建议直接修改下方的脚本调整成适合自己游戏的样式
  56.   
  57.   COLOR2 = Color.new(255, 255, 255, 0)
  58.   #姓名的背景框右边的颜色,四个数值分别是R、G、B以及透明度
  59.   #有能力建议直接修改下方的脚本调整成适合自己游戏的样式
  60.   
  61. #==============================================================================
  62. #  设定结束
  63. #==============================================================================
  64. end
  65. #==============================================================================
  66. #  脚本部分
  67. #==============================================================================
  68. class Window_Message < Window_Base    
  69.   def visible_line_number
  70.     return M5Name::LINE
  71.   end  
  72.   def process_all_text
  73.     open_and_wait
  74.     text = convert_escape_characters($game_message.all_text)
  75.     text.slice!(/\ename\[(.+?)\]/i)
  76.     @showname = $1
  77.     pos = {}
  78.     new_page(text, pos)
  79.     process_character(text.slice!(0, 1), text, pos) until text.empty?
  80.   end  
  81.   def new_line_x
  82.     $game_message.face_name.empty? ? 0 : 112
  83.   end  
  84.   def new_page(text, pos)
  85.     contents.clear
  86.     draw_face($game_message.face_name, $game_message.face_index, 0,0)
  87.     contents.font.name = M5Name::FONT
  88.     contents.font.bold = M5Name::BOLD
  89.     contents.font.italic = M5Name::ITALIC
  90.     contents.font.outline = M5Name::OUT
  91.     contents.font.shadow = M5Name::SHADOW
  92.     contents.font.color = M5Name::COLOR
  93.     contents.font.out_color = M5Name::OUT_COLOR
  94.     contents.font.size = M5Name::SIZE
  95.     if @showname != nil
  96.       draw_namebackground(text_size(@showname))
  97.       draw_text($game_message.face_name.empty? ? 0 : 112,0,contents_width,
  98.       M5Name::SIZE, @showname,M5Name::ALIGN)
  99.       pos[:y] = M5Name::SIZE
  100.     else
  101.       pos[:y] = 0
  102.     end    
  103.     reset_font_settings
  104.     pos[:x] = new_line_x
  105.     pos[:new_x] = new_line_x
  106.     pos[:height] = calc_line_height(text)
  107.     @showname = ""
  108.     clear_flags    
  109.   end
  110.   def reset_font_settings
  111.     change_color(normal_color)
  112.     contents.font.bold = Font.default_bold 
  113.     contents.font.italic = Font.default_italic
  114.     contents.font.name = Font.default_name
  115.     contents.font.outline = Font.default_outline 
  116.     contents.font.shadow = Font.default_shadow 
  117.     contents.font.size = Font.default_size
  118.     contents.font.out_color = Font.default_out_color
  119.   end
  120. #==============================================================================
  121. #  以下内容用来描绘姓名框的背景,有能力的建议自行对其修改成适合自己游戏的样式
  122. #==============================================================================  
  123.   
  124.   def draw_namebackground(rect)
  125.     temp_rect = rect.clone
  126.     temp_rect.x = $game_message.face_name.empty? ? 0 : 112
  127.     temp_rect.width = 460    
  128.     contents.gradient_fill_rect(temp_rect, name_color1, name_color2)
  129.   end
  130.   
  131.   def name_color1
  132.     M5Name::COLOR1
  133.   end
  134.   
  135.   def name_color2
  136.     M5Name::COLOR2
  137.   end
  138.   
  139. end
  140. #==============================================================================
  141. #  脚本结束
  142. #==============================================================================


有什么别的方法能把这些脚本不发代码地复制下来呢?求教!
作者: 喵呜喵5    时间: 2014-4-13 15:02
直接复制的话会提示什么错误?
作者: 逆向刺杀者    时间: 2014-4-19 12:48
喵呜喵5 发表于 2014-4-13 15:02
直接复制的话会提示什么错误?

唔,无论那个脚本,都会说第几行的脚本出错
作者: 喵呜喵5    时间: 2014-4-19 13:17
逆向刺杀者 发表于 2014-4-19 12:48
唔,无论那个脚本,都会说第几行的脚本出错

第几行?哪个错误?
作者: 紫苍焰    时间: 2014-4-19 14:00
喵呜喵5 发表于 2014-4-19 13:17
第几行?哪个错误?

恐怕是他连帖子里的内容跟前面的01020304之类的东西一起给复制进去了吧……
作者: fux2    时间: 2014-4-19 15:31
没看见代码框右上角有个复制么,如果是OPERA浏览器貌似这个复制也不行,换浏览器吧。
作者: yychchhh    时间: 2014-4-19 16:06
RUBY 代码复制
  1. 还有
你一起复制进去干什么。。。
lz你是来搞笑的吗





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1