制作游戏自动辅助第一步:游戏创建角色随机取名
1、 内容大纲
1 、 随机数字取名: 随机数字重复及不重复的写法。
2 、随机字母取名: 随机字母重复及不重复的写法。
3 、 随机汉字取名: 如何取好听的名字。
2、 随机数字取名
随机数字允许重复
思路:
1、设定随机数字的范围(最大数9,最小数1)
2、设置由几个数字组成名字(名字位数 5)
3、做一个循环,将设定的随机数范围的数字存入到数组中
4、在数组中取一个随机数
5、将循环五次取到的随机数合成为字符串名字
3、代码:
名字=""
最大数 = 9
最小数 = 1
位数 = 5
Randomize
数组 = "|"
For i = 最小数 To 最大数
数组=数组&i&"|"
Next
While (位数)
随机数 = split(数组, "|")(Int((最大数 - 最小数 + 1) * Rnd + 最小数))//在数组中取一个随机数
名字 = 名字 & 随机数
位数=位数-1
Wend
MessageBox 名字
运行结果:
4、运行了两次,第一次结果为:88363,五位数中8和3都是重复的。第二次结果为:85336,五位数中3重复了一次。
随机数字不重复
思路:
1、设定随机数字的范围(最大数9,最小数1)
2、设置由几个数字组成名字(名字位数 5)
3、做一个循环,将设定的随机数范围的数字存入到数组中
4、在数组中取一个随机数
5、将当前取到的随机数从数组中删除,以免下一次取到重复的
6、将循环五次取到的随机数合成为字符串名字
5、代码:
名字=""
最大数 = 9
最小数 = 1
位数 = 5
Randomize
数组 = "|"
For i = 最小数 To 最大数
数组=数组&i&"|"
Next
While (位数)
随机数 = split(数组, "|")(Int((最大数 - 最小数 + 1) * Rnd + 最小数))//在数组中取一个随机数
数组=Replace(数组,"|"&随机数&"|","|") //将当前取到的随机数从数组中删除,以免下一次取到重复的
名字 = 名字 & 随机数
最大数=最大数-1
位数=位数-1
Wend
MessageBox 名字
运行结果:
6、运行了两次,第一次结果为:23597,第二次结果为:37159。两次运行结果五位数中没有出现重复的情况
7、随机字母取名
随机字母允许重复
思路:
1、设定随机字母的范围(小写26个加大写26个,总共52个字母)
2、设置由几个字母组成名字(名字位数 5)
3、将52个字母赋值给字符串变量
4、随机在52个字母中获取一个字母
5、将循环五次获取到的字母叠加给字符串变量:名字。
8、代码:
//大小写字母总共52个,52个字母内随机选择五位不同的字母组合成名字
位数 = 5
字母个数=52
名字 = ""
Randomize
字母 ="A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z|a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z"
字符串=""
While (位数)
随机字母= split(字母, "|")(Int((字母个数 + 1) * Rnd ))
名字= 名字 & 随机字母
位数=位数-1
Wend
MessageBox 名字
运行结果:
9、运行了两次,第一次结果为:jjFja,五位字母中j重复了。第二次结果为:BEcEG,五位字母中E重复了。
10、随机字母不重复
思路:
1、设定随机字母的范围(小写26个加大写26个,总共52个字母)
2、设置由几个字母组成名字(名字位数 5)
3、将52个字母赋值给字符串变量
4、随机在52个字母中获取一个字母
5、将当前取到的随机字母从数组中删除,以免下一次取到重复的
6、将循环五次获取到的字母叠加给字符串变量:名字。
11、代码:
//大小写字母总共52个,52个字母内随机选择五位不同的字母组合成名字
位数 = 5
字母个数=52
名字 = ""
Randomize
字母 ="A|B|C|D|E|F|G|H|I|J|K|L|M|N|O|P|Q|R|S|T|U|V|W|X|Y|Z|a|b|c|d|e|f|g|h|i|j|k|l|m|n|o|p|q|r|s|t|u|v|w|x|y|z"
字符串=""
While (位数)
随机字母 = split(字母, "|")(Int((字母个数 + 1) * Rnd ))
字母=Replace(字母,"|"&随机字母&"|","|")
名字 = 名字 & 随机字母
字母个数=字母个数-1
位数=位数-1
Wend
MessageBox 名字
运行结果:
12、随机汉字取名
随机汉字取名方法一
这类型的起名测试想必很多童鞋都有玩过,根据它的规则起出来的名字都不至于太惨不忍睹。咱们也可以利用这个思路,挑选我们觉得好听的姓氏、名字的第一个字、名字的第二个字。好听的姓氏加上好听的名字,组合起来的名字比随机得到是不是正常很多,让我们一起来实验下。
13、思路:
1、设定10个好听的姓氏,放在select case a中。a的值等于10的随机数。
2、设定10个好听的字作为名字的第一个字,放在select case b中。b的值等于10的随机数。
3、设定10个好听的字作为名字的第二个字,放在select case c中。c的值等于10的随机数。
4、用随机数获取姓氏,名字的第一个字第二个字,组合成名字
14、代码:
Randomize
a = CInt(Int((10 - 1 + 1) * Rnd + 1))
b = CInt(Int((10 - 1 + 1) * Rnd + 1))
c = CInt(Int((10 - 1 + 1) * Rnd + 1))
nei = ""
Select Case a
Case 1
zhu = "傅"
Case 2
zhu = "薛"
Case 3
zhu = "夏"
Case 4
zhu = "上官"
Case 5
zhu = "欧阳"
Case 6
zhu = "岳"
Case 7
zhu = "墨"
Case 8
zhu = "温"
Case 9
zhu = "景"
Case 10
zhu = "燕"
End Select
nei = nei & zhu
Select Case b
Case 1
zhu = "琪"
Case 2
zhu = "汝"
Case 3
zhu = "瑞"
Case 4
zhu = "诗"
Case 5
zhu = "雯"
Case 6
zhu = "君"
Case 7
zhu = "沐"
Case 8
zhu = "双"
Case 9
zhu = "宇"
Case 10
zhu = "玉"
End Select
nei = nei & zhu
//第三个字
Select Case c
Case 1
zhu = "琬"
Case 2
zhu = "博"
Case 3
zhu = "涵"
Case 4
zhu = "彬"
Case 5
zhu = "棠"
Case 6
zhu = "宸"
Case 7
zhu = "海"
Case 8
zhu = "浪"
Case 9
zhu = "川"
Case 10
zhu = "竹"
End Select
随机取姓名 = nei & zhu
MessageBox 随机取姓名
15、运行的结果是:墨君川,那啥……小编的文化程度也就只有这高度了,童鞋们可以设置自己喜欢的文字,看看组合起来会变成啥,如果组合到了神马奇怪逗逼的名字,务必贴出来让小编也乐乐~~
16、随机汉字取名方法二
思路:
1、将你觉得好听的名字收集放入到字符串变量,随机名字中
2、分割字符串变量中的名字,并且获取数组元素个数
3、使用随机数从数组中随机获取一个名字
代码
i = 0
Randomize
随机名字 = "依凝|如柏|雁菱|凝竹|宛白|初柔|南蕾|书萱|梦槐|南琴|绿海|沛儿|晓瑶|凝蝶|紫雪|念双|念真|曼寒|凡霜|飞雪|雪兰|雅霜|从蓉|冷雪|靖巧|翠丝|觅翠|凡白|乐蓉|迎波|丹烟|梦旋|书双|念桃|夜天|安筠|觅柔|初南|秋蝶|千易|安露|诗蕊|山雁|友菱|香露|晓兰|白卉|语山|冷珍|秋翠|夏柳|如之|忆南|书易|翠桃|寄瑶|如曼|问柳|幻桃|又菡|醉蝶|亦绿|诗珊|听芹|新之|易巧|念云|晓灵|静枫|夏蓉|如南|幼丝|秋白|冰安|秋白|南风|醉山|初彤|凝海|紫文|凌晴|雅琴|傲安|傲之|初蝶|代芹|诗霜|碧灵|诗柳|夏柳|采白|慕梅|乐安|冬菱|紫安|宛凝|雨雪|易真|安荷|静竹|代柔|丹秋|绮梅|依白|凝荷|幼珊|忆彤|凌青|之桃|芷荷|听荷|代玉|念珍|梦菲|夜春|千秋|白秋|谷菱|飞松|初瑶|惜灵|梦易|新瑶|曼梅|碧曼|友瑶|雨兰|夜柳|芷珍|含芙|夜云|依萱|凝雁|以莲|安南|幼晴|尔琴|飞阳|"
随机名字= split(随机名字, "|")
名字总个数=UBound(随机名字)-1
TracePrint 名字总个数
i = (Int((名字总个数 + 1) * Rnd + 1))
TracePrint i
MessageBox 随机名字(i)