Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   www.boolean.name > Программирование игр для компьютеров > Blitz3D > Полезные функции

Полезные функции Выкладываем полезные функции, чтоб не изобретать велосипед заново...

Ответ
 
Опции темы
Старый 10.09.2010, 13:52   #1
Dzirt
Элита
 
Аватар для Dzirt
 
Регистрация: 16.01.2008
Адрес: Украина
Сообщений: 1,800
Написано 958 полезных сообщений
(для 3,832 пользователей)
Генератор имен

Накатал генератор имен...может кому пригодится:

; ************************************************************
; * Project Name: Rpg Name Generator
; * Author:  Dzirt (Olexander Ponomariov)
; * Date Started: 29/04/2010
; * Last Updated: 29/04/2010
; * Website: -
; * Email: CityRaceGame@gmail.com
; * Version: 1.00
; ************************************************************


; Автор не отвечает за все нецензурные выражения которые могут сгенерироватся =)
Graphics3D 800, 600,32,2
SetFont LoadFont("Arial Cyr", 16,0,0,0)

name1$=Rpg_Name_Generator(4,1,2)
name2$=Rpg_Name_Generator(5,1,1)

RenderWorld

Text 10,0,"Здраствуй странник!  "
Text 10,20,"Вот познакомься с хозяевами этого дома.... "
Text 10,40,"..это господин: "+name2
Text 10,60,"..и леди : "+name1
Text 10,140,"(имена сгенирированы.вы также можете выбирать длинну генирируемых имен.) "

Flip
WaitKey() 


;---------------------------------------------------------
;nameWords - Сколько букв будет в имени
;                        (больше шести ставить опасно...ваша психика можэт не выдержать таких слов)

;SeedRndName - Использовить сид для выбора букв или нет.
;                            0. Нет
;                            1.Да
;                            >=2.Всё что больше единицы будет считатся за сид. Тоисть если вы хотите фиксированый
;                            сид но дефолтный ( 0 ) сид вам не подходит...вы можете  назнчить его самому использовав
;                            нужное число.
;                            (думаю тут всем понятно что если врубить сид, то имена при
;                                каждом запуске проги будут разные. Если жэ нет, то имена будут фиксироваными.)

;ManOrWoman - Для какого пола генерируется имя.
;                            1. Мужик 
;                            2. Женщина 
;---------------------------------------------------------
Function Rpg_Name_Generator$(nameWords,SeedRndName,ManOrWoman)

    
    If SeedRndName=1
        SeedRnd (MilliSecs()*Rnd(17,MilliSecs))
    ElseIf  SeedRndName>1
        SeedRnd SeedRndName
    EndIf
    
    If ManOrWoman=0 ManOrWoman=1
    var=Abs(nameWords)
    If var=0 var=1

    For i=1 To var
        If i>1
                If temp_var=1    
                    char=mYRnd(16,20,var_for_rnd)
                Else
                    char=mYRnd(1,15,var_for_rnd)
                EndIf
        Else
            char=mYRnd(1,20,var_for_rnd)
        EndIf
        
        If ManOrWoman=1 And i=var char=mYRnd(1,15,var_for_rnd)
        If ManOrWoman=1 And i=var-1 char=mYRnd(16,20,var_for_rnd)
        
        If char<=15
            temp_var=1
            Select char
                Case 1
                    leter$="б"
                Case 2
                    leter$="в"
                Case 3
                    leter$="г"
                Case 4
                    leter$="д"
                Case 5
                    leter$="к"
                Case 6
                    leter$="л"
                Case 7
                    leter$="м"
                Case 8
                    leter$="н"
                Case 9
                    leter$="п"
                Case 10
                    leter$="р"
                Case 11
                    leter$="с"
                Case 12
                    leter$="т"
                Case 13
                    leter$="х"
                Case 14
                    leter$="ч"
                Case 15
                    leter$="ш"
                End Select
        Else        
            temp_var=2
            Select char
                Case 16
                    leter$="а"
                Case 17
                    leter$="е"
                Case 18
                    leter$="о"
                Case 19
                    leter$="у"
                Case 20
                    leter$="э"
            End Select
        EndIf
                var_for_rnd=char
                If i=1 leter$=UpperCyr(leter$)
            
                If ManOrWoman=2
                    If i=var And temp_var=1 leter$="я"
                    If i=var And temp_var=2 leter$="а"    
                EndIf
                name$=name$+leter$
    Next
            
    Return name$
End Function


 Function UpperCyr$(StringCyr$)
Length=Len(StringCyr$):If Length<1 Then Return ""
UpperStringCyr$=""
For i=1 To Length:Symbol=Asc(Upper$(Mid$(StringCyr$,i,1)))
If Symbol>$DF Then Symbol=Symbol-$20:Goto EndXLAT
Select Symbol
Case $A2
Symbol=$A1
Case $B4
Symbol=$A5
Case $B8
Symbol=$A8
Case $BA
Symbol=$AA
Case $BF
Symbol=$AF
End Select
.EndXLAT
UpperStringCyr$=UpperStringCyr$+Chr$(Symbol)
Next
Return UpperStringCyr$
End Function

Function mYRnd% (num1,num2,varRnd)

final=Rand(num1,num2)

While final=varRnd
    SeedRnd MilliSecs()
    final=Rand(num1,num2)
Wend

Return final
End Function
(Offline)
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо Dzirt за это полезное сообщение:
DeeJex (10.09.2010), Nex (10.09.2010), PackegerX (04.09.2011), Randomize (10.09.2010)
Старый 10.09.2010, 14:54   #2
Nex
Гигант индустрии
 
Аватар для Nex
 
Регистрация: 13.09.2008
Сообщений: 2,888
Написано 1,183 полезных сообщений
(для 3,292 пользователей)
Ответ: Генератор имен

Господин Накас и леди Кака.
(Offline)
 
Ответить с цитированием
Старый 10.09.2010, 15:10   #3
IgorOK
Мастер
 
Аватар для IgorOK
 
Регистрация: 26.10.2009
Сообщений: 1,175
Написано 601 полезных сообщений
(для 2,168 пользователей)
Ответ: Генератор имен

Впомниается генерация имён из Диабло II. "Зазубренный Извращенец упырь" или что-то в этом роде XD


Ничего так)

Эшаеб и Леди Чача (вах!)
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо IgorOK за это полезное сообщение:
Harter (23.09.2010), Mr_F_ (11.09.2010)
Старый 10.09.2010, 15:36   #4
Dzirt
Элита
 
Аватар для Dzirt
 
Регистрация: 16.01.2008
Адрес: Украина
Сообщений: 1,800
Написано 958 полезных сообщений
(для 3,832 пользователей)
Ответ: Генератор имен

ну я незря написал :
; Автор не отвечает за все нецензурные выражения которые могут сгенерироватся =)
...у меня иногда и похлеще было ХД)
Но впринцеппе в большенстве случаев имена более чем приличные.)
(Offline)
 
Ответить с цитированием
Старый 10.09.2010, 15:40   #5
.Squid
Дэвелопер
 
Аватар для .Squid
 
Регистрация: 05.04.2009
Адрес: Запорожье
Сообщений: 1,500
Написано 1,011 полезных сообщений
(для 4,641 пользователей)
Ответ: Генератор имен

В Galcon, когда он еще был бесплатным, и написан был на питоне (сейчас хз, может на питоне и остался), интересный был генератор имен планет. Вполне произносимые и даже интересные названия получались.
__________________

(Offline)
 
Ответить с цитированием
Старый 10.09.2010, 16:26   #6
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: Планета Земля
Сообщений: 4,141
Написано 2,335 полезных сообщений
(для 6,492 пользователей)
Ответ: Генератор имен

Диабло рулит.
"Злость удар кулак дерева"
"Дуб Медвед Звёзд стаcш"
__________________
Retry, Abort, Ignore? █
AMD Ryzen 7 1700X x8 3.4Ghz; 16Gb ram; Radeon RX 570
AMD Athlon II x4 2.6Ghz; 8Gb ram; Nvidia Geforce GTX 750 Ti
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Randomize за это полезное сообщение:
Harter (23.09.2010), Mr_F_ (11.09.2010)
Старый 10.09.2010, 16:37   #7
ARA
ТЫ ЧООО?
 
Аватар для ARA
 
Регистрация: 26.02.2007
Сообщений: 3,321
Написано 1,989 полезных сообщений
(для 7,107 пользователей)
Ответ: Генератор имен

Прикольно. В рпг можно генерировать имена для второстепенных NPC жителей болтающихся туда сюда для декораций =)
__________________
Вертекс в глаз или в пиксель раз?
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Dzirt (10.09.2010)
Старый 10.09.2010, 17:01   #8
DeeJex
Разработчик
 
Аватар для DeeJex
 
Регистрация: 24.02.2010
Адрес: Новороссийск
Сообщений: 485
Написано 112 полезных сообщений
(для 329 пользователей)
Ответ: Генератор имен

господин Рулох
и леди Ошея
(Offline)
 
Ответить с цитированием
Старый 10.09.2010, 18:13   #9
Android
Бывалый
 
Регистрация: 29.03.2007
Сообщений: 662
Написано 199 полезных сообщений
(для 448 пользователей)
Ответ: Генератор имен

Господин Ебоух - это сильно.
(Offline)
 
Ответить с цитированием
Эти 15 пользователя(ей) сказали Спасибо Android за это полезное сообщение:
-=SCiP=- (21.09.2010), ABTOMAT (10.09.2010), Arles (10.09.2010), den (22.01.2011), Dzirt (10.09.2010), h1dd3n (10.09.2010), IGR (11.09.2010), impersonalis (10.09.2010), is.SarCasm (11.09.2010), Mr_F_ (11.09.2010), Nex (11.09.2010), Nuprahtor (10.09.2010), Reks888 (12.09.2010), St_AnGer (10.09.2010), Tadeus (10.09.2010)
Старый 10.09.2010, 18:53   #10
Morganolla
Бывалый
 
Аватар для Morganolla
 
Регистрация: 02.12.2008
Адрес: наша раша
Сообщений: 762
Написано 129 полезных сообщений
(для 245 пользователей)
Ответ: Генератор имен

А почему нет некоторых букв типа ц ю щ ф и ...
__________________
Reality Simulation Games
Core 2 Duo 2,8GHz, RAM 1Gb, ATI R5670 1Gb. WinXP 32
(Offline)
 
Ответить с цитированием
Старый 10.09.2010, 19:08   #11
Dzirt
Элита
 
Аватар для Dzirt
 
Регистрация: 16.01.2008
Адрес: Украина
Сообщений: 1,800
Написано 958 полезных сообщений
(для 3,832 пользователей)
Ответ: Генератор имен

Сообщение от Morganolla Посмотреть сообщение
А почему нет некоторых букв типа ц ю щ ф и ...
Чтобы имена хорошие получались.
(Offline)
 
Ответить с цитированием
Старый 10.09.2010, 19:11   #12
Randomize
[object Object]
 
Аватар для Randomize
 
Регистрация: 01.08.2008
Адрес: Планета Земля
Сообщений: 4,141
Написано 2,335 полезных сообщений
(для 6,492 пользователей)
Ответ: Генератор имен

Юрий, Фёдор, Дмитрий - плохие имена?
__________________
Retry, Abort, Ignore? █
AMD Ryzen 7 1700X x8 3.4Ghz; 16Gb ram; Radeon RX 570
AMD Athlon II x4 2.6Ghz; 8Gb ram; Nvidia Geforce GTX 750 Ti
(Offline)
 
Ответить с цитированием
Старый 10.09.2010, 19:31   #13
Dzirt
Элита
 
Аватар для Dzirt
 
Регистрация: 16.01.2008
Адрес: Украина
Сообщений: 1,800
Написано 958 полезных сообщений
(для 3,832 пользователей)
Ответ: Генератор имен

Сообщение от Randomize Посмотреть сообщение
Юрий, Фёдор, Дмитрий - плохие имена?
Ага, а ты наверное позабыл что генератор рандомный? Как думаешь какой шанс на такую комбинацию? В большинстве генерируемых имен эти буквы будут только мешать.
(Offline)
 
Ответить с цитированием
Старый 11.09.2010, 00:46   #14
IGR
Blitz's Shame !!
 
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений
(для 2,012 пользователей)
Ответ: Генератор имен

сюдя по отзывам веселая программка !! Жаль немогу потестить !!
Конечно до "нормальной" генерации фентези-рпг имен еще нужно дотачивать !!
(Offline)
 
Ответить с цитированием
Старый 11.09.2010, 06:03   #15
DeeJex
Разработчик
 
Аватар для DeeJex
 
Регистрация: 24.02.2010
Адрес: Новороссийск
Сообщений: 485
Написано 112 полезных сообщений
(для 329 пользователей)
Ответ: Генератор имен

Я когда-то делал генератор реальных имен и фамилий с выбором национальности, надо будет запостить наработки.
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +1, время: 14:44.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com