设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2920|回复: 8
打印 上一主题 下一主题

一些很简单的小公式。

 关闭 [复制链接]

Lv1.梦旅人

月下可怜人

梦石
0
星屑
50
在线时间
10 小时
注册时间
2005-11-23
帖子
4085

第1届短篇游戏比赛亚军

跳转到指定楼层
1
发表于 2007-8-5 18:31:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
一点很简单却比较常用的,我做飞机,泡泡龙,弹力球与台球时候都用到的。

module Math
  
  #直边
  def self.tri_side(l1, l2)
      return (Math.sqrt(l2 ** 2 - l1 ** 2) + 0.5).to_i
  end
  
  #余
  def self.cos_a(angle)
      return Math.cos(angle*(Math::PI/180))
  end   
  
  #正   
  def self.sin_a(angle)
      return Math.sin(angle*(Math::PI/180))
  end      
  
  #x轴翻转
  def self.dir_value(n1, n2)
      return ((n1 + n2).abs != (n1.abs + n2.abs) ? -1 : 1)
  end

  #圆相交
def self.collision?(x1,y1,x2,y2,r)
     if (x1 - x2) **2 + (y1 - y2) **2 <= r ** 2
         return true
     end   
     return false
end
   
end
纵然千里外,我等雁归来。

Lv1.梦旅人

月下可怜人

梦石
0
星屑
50
在线时间
10 小时
注册时间
2005-11-23
帖子
4085

第1届短篇游戏比赛亚军

2
 楼主| 发表于 2007-8-5 18:31:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
一点很简单却比较常用的,我做飞机,泡泡龙,弹力球与台球时候都用到的。

module Math
  
  #直边
  def self.tri_side(l1, l2)
      return (Math.sqrt(l2 ** 2 - l1 ** 2) + 0.5).to_i
  end
  
  #余
  def self.cos_a(angle)
      return Math.cos(angle*(Math::PI/180))
  end   
  
  #正   
  def self.sin_a(angle)
      return Math.sin(angle*(Math::PI/180))
  end      
  
  #x轴翻转
  def self.dir_value(n1, n2)
      return ((n1 + n2).abs != (n1.abs + n2.abs) ? -1 : 1)
  end

  #圆相交
def self.collision?(x1,y1,x2,y2,r)
     if (x1 - x2) **2 + (y1 - y2) **2 <= r ** 2
         return true
     end   
     return false
end
   
end
纵然千里外,我等雁归来。
头像被屏蔽

Lv1.梦旅人 (禁止发言)

苹果梨

梦石
0
星屑
43
在线时间
6 小时
注册时间
2007-2-14
帖子
720
3
发表于 2007-8-5 18:39:14 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
451
在线时间
127 小时
注册时间
2006-11-2
帖子
1200
4
发表于 2007-8-6 04:17:03 | 只看该作者
嗯,对大多数RMer没多大用处 对少数RMer有非常大用处的东东。

费心了,这些可是做小游戏的基础,有空好好研究下。
和记忆一起封存着的ID...
回复 支持 反对

使用道具 举报

Lv1.梦旅人

Dancer-

梦石
0
星屑
55
在线时间
76 小时
注册时间
2006-11-9
帖子
3551

开拓者贵宾

5
发表于 2007-8-6 18:19:58 | 只看该作者
感觉做一些非RPG类的游戏可能会比较常用,所以也发主站了。
http://rpg.blue/web/htm/news814.htm
VIP 2
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

名侦探小柯

梦石
0
星屑
3299
在线时间
3619 小时
注册时间
2006-9-6
帖子
37400

开拓者贵宾第3届短篇游戏大赛主流游戏组亚军第5届短篇游戏比赛亚军

6
发表于 2007-8-6 18:40:20 | 只看该作者
看不懂的说……
回复 支持 反对

使用道具 举报

Lv1.梦旅人

Dancer-

梦石
0
星屑
105
在线时间
78 小时
注册时间
2006-5-15
帖子
3306
7
发表于 2007-8-6 18:49:08 | 只看该作者
...不是很明白....不过这种东西好浮云啊......
做特殊效果的时候或许能用到?
一个机缘巧合后,被改变了人生的第八年。
养着两只猫,可是我对猫过敏。
为了那终将到来的一天。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

月下可怜人

梦石
0
星屑
50
在线时间
10 小时
注册时间
2005-11-23
帖子
4085

第1届短篇游戏比赛亚军

8
 楼主| 发表于 2007-8-7 22:32:09 | 只看该作者
最后一个有个错误,忘了从游戏脱离了,已修改,麻烦斑竹了。

module Math

#直边
def self.tri_side(l1, l2)
     return (Math.sqrt(l2 ** 2 - l1 ** 2) + 0.5).to_i
end

#余
def self.cos_a(angle)
     return Math.cos(angle*(Math::PI/180))
end   

#正   
def self.sin_a(angle)
     return Math.sin(angle*(Math::PI/180))
end      

#x轴翻转
def self.dir_value(n1, n2)
     return ((n1 + n2).abs != (n1.abs + n2.abs) ? -1 : 1)
end

#圆相交
def self.collision?(x1,y1,x2,y2,r)
     if (x1 - x2) **2 + (y1 - y2) **2 <= r ** 2
         return true
     end   
     return false
end
   
end
纵然千里外,我等雁归来。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

Dancer-Ne

梦石
0
星屑
50
在线时间
62 小时
注册时间
2006-7-29
帖子
1017
9
发表于 2007-8-7 22:39:42 | 只看该作者
更新完毕~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-16 22:28

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表