Sumbangan / Donate

Donate (Libery Reserve)


U5041526

Kamis, 10 Mei 2012

Game Maker - String Handling

1. Random Word in String
Digunakan untuk mengacak kata, misalnya: "Kevin", maka tulisan "Kevin" dapat diacak menjadi "Kevni", "Kvnie", dst, pokoknya diacak lah

var str_length,str_new,str_char,i1;
str_length=string_length(argument0)
str_new=""
i1=1
repeat (str_length)
{
str_char=string_char_at(argument0,i1)
str_new=string_insert(str_char,str_new,random(str_length))
i1+=1
}
show_message(string(str_new))

Argument0 adalah string, misalnya yaitu "Kevin"

2. String Reverse
Untuk me-reverse atau membalik string, misal: "Kevin" jadi "niveK", "Blaze" jadi "ezalB"


var str_length,str_new,i1,i2,str_char;
str_length=string_length(argument0);
str_new="";
i1=str_length;
i2=1;
repeat(str_length)
{
str_char=string_char_at(argument0,i1);
str_new=string_insert(str_char,str_new,i2);

i1-=1;
i2+=1;
}
show_message(str_new);


atau 

var i,str_new;

str_new="";

for(i=string_length(argument0);i>0; i-=1)
str_new+=string_char_at(argument0,i);

show_message(str_new);


3. String to Ascii Key
Untuk merubah kata atau string menjadi kode Ascii

var str_length,str_new,str_char,i1,i2;
str_length=string_length(argument0);
str_new="";
i1=1;
i2=0
repeat (str_length)
{
str_char=string_char_at(argument0,i1)
str_new=string_insert(string(ord(str_char)),str_new,i2)
i1+=1
i2+=3
}
show_message(str_new);

4. Encrypt dan Decrypt String
Untuk meng-encrypt dan meng-descrypt string
Argument0 adalah string yang mau di encrypt / decrypt
Argument1 adalah kode (berupa angka) untuk encrypt dan decryptnya (Jika kamu menggunakan angka 1 untuk meng-encrypt string, maka untuk mengdecryptnya gunakan angka 1 juga)

Encrypt:

var str_length,str_new,str_char,str_crypt,str_number,i1;
str_length=string_length(argument0)
str_new=""
i1=1
repeat (str_length)
{
str_char=string_char_at(argument0,i1)
str_crypt=real(ord(str_char)+argument1)

str_crypt+=round((sqr(i1)+(i1*13)
-75)-round(sqrt(abs(i1*16)))
/3)
str_new=string_insert(chr(str_crypt),str_new,
i1)
i1+=1
}
str_crypt=0
show_message(str_new);

Decrypt:
var str_length,str_new,str_char,str_crypt,str_number,i1;
str_length=string_length(argument0)
str_new=""
i1=1
repeat (str_length)
{
str_char=string_char_at(argument0,i1)
str_crypt=real(ord(str_char)-argument1)

str_crypt-=round((sqr(i1)+(i1*13)
-75)-round(sqrt(abs(i1*16)))
/3)
str_new=string_insert(chr(str_crypt),str_new,
i1)
i1+=1
}
str_crypt=0
show_message(str_new);


5. Membuat Random String
Untuk membuat string secara random.
Argument0 adalah panjang string yang mau dibuat
Argument1 adalah huruf hidup / vowel (a, i, u, e, o), jadi isi argument1 menjadi true bila ingin memulai string yang dibuat dengan huruf hidup, dan false untuk memulai string yang dibuat dengan huruf mati.

var str_new,str_vowel,str_char;
str_new=""
str_vowel=argument1
repeat (argument0)
{
    if (str_vowel==true)
    {
    str_vowel=false
    str_new=string_insert(choose('a','e','i','o','u'),str_new,argument0+1)
    }
    else
    {
        if (choose(1,2)==1)
        {
        str_char=choose('b','c','d','f','g','h','j','k','l','m')
        }
        else
        {
        str_char=choose('n','p','q','r','s','t','v','w','x','y','z')

        }
        str_new=string_insert(str_char,str_new,argument0+1)
        str_vowel=true
    }
}
show_message(str_new);


6. Huruf Kapital Setelah Spasi
Membuat huruf menjadi kapital sesudah spasi, contoh:
Argument0 nya disini dengan "kevin", huruf "k" nya tidak kapital

var i,text;

text="";
for(i=1; i
{
  if string_char_at(argument0,i-1)=="" || i=1
{

text+=string_upper(string_char_at(argument0,i));
}
else
{
text+=string_char_at(argument0,i);
}
}

show_message('I am '+text+' Blaze Coolerz')

Pada show_message, terdapat variable text, dan variable text nya kita isi dengan "kevin", maka hasilnya akan seperti ini, "I am Kevin Blaze Coolerz", tulisan "kevin" menjadi "Kevin".

7. Mereplace string secara random
Contoh: "Kevin", maka dari kata itu bisa di replace kata perkata nya tanpa mengurangi jumlah kata.
Argument0 adalah string yang mau di replace
Argument1 adalah persentasenya, 0 sampai 100

var i,chance,choice;

for (i=1; i
{
if floor(random(100))>100-
argument1 && string_char_at(argument0,i)!=" "
{
if string_char_at(argument0,i)=="a"
|| string_char_at(argument0,i)=="e"
|| string_char_at(argument0,i)=="i"
|| string_char_at(argument0,i)=="o"
|| string_char_at(argument0,i)=="u"
{
chance[0] = 8.17;
chance[1] = 12.70;
chance[2] = 6.97;
chance[3] = 7.51;
chance[4] = 2.76;
choice[0] = "a";
choice[1] = "e";
choice[2] = "i";
choice[3] = "o";
choice[4] = "u";

var r, a;

r = random(38.11);
a = -1;

do
{
a += 1;
r -= chance[a];
}
until (r < 0);

argument0=string_delete(argument0,i,1);
argument0=string_insert(choice[a],argument0,i);
}
else
{
chance[0] = 1.49;
chance[1] = 2.78;
chance[2] = 4.25;
chance[3] = 2.23;
chance[4] = 2.02;
chance[5] = 6.09;
chance[6] = 0.15;
chance[7] = 0.77;
chance[8] = 4.03;
chance[9] = 2.41;
chance[10] = 6.75;
chance[11] = 1.93;
chance[12] = 0.10;
chance[13] = 5.99;
chance[14] = 6.33;
chance[15] = 9.06;
chance[16] = 0.98;
chance[17] = 2.36;
chance[18] = 0.15;
chance[19] = 1.97;
chance[20] = 0.07;
choice[0] = "b";
choice[1] = "c";
choice[2] = "d";
choice[3] = "f";
choice[4] = "g";
choice[5] = "h";
choice[6] = "j";
choice[7] = "k";
choice[8] = "l";
choice[9] = "m";
choice[10] = "n";
choice[11] = "p";
choice[12] = "q";
choice[13] = "r";
choice[14] = "s";
choice[15] = "t";
choice[16] = "v";
choice[17] = "w";
choice[18] = "x";
choice[19] = "y";
choice[20] = "z";

var r, a;

r = random(61.91);
a = -1;
do
{
a += 1;
r -= chance[a];
}

until (r < 0);

argument0=string_delete(
argument0,i,1);
argument0=string_insert(choice[a],
argument0,i);chance[0] = 8.17;
}
}
}
show_message(argument0);


Disetiap script, terdapat funsgi Show_message(), kamu bisa merubah fungsi itu sesuai dengan kebutuhanmu.

Ok, sampai disini dulu, bila ada string handling yang lain, entar Saya update :D

Good Luck

*All script is not by Me, beberapa script dibuat oleh Rixeno