Türkiye'nin en eski ve aktif online oyun platformu, Ultima Online, Counter-Strike ve diğer online oyunlar hakkında Türkçe haber, bilgi ve forum sunuyor. Türkiye'nin en eski ve aktif online oyun platformu, Ultima Online, Counter-Strike ve diğer online oyunlar hakkında Türkçe haber, bilgi ve forum sunuyor.
  • ANASAYFA
  • ULTIMA ONLINE
    • Ultima Online Oyuncu Rehberi

      Ultima Online Oyuncu Rehberi

      Oyunu hakkında tanıcı bilgiler ve ipuçları

    • Ultima Online Server List

      Ultima Online Server List

      Önemli özellikleri ve online oyuncu sayıları

    • Ultima Online Script

      Ultima Online Script

      Sphere, RunUO, Razor scriptleri

    • Ultima Online Forum

      Ultima Online Forum

      UO hakkında görüş alışverişi

  • FORUM
  • DOKÜMAN
  • İNDİR
  • DISCORD 34
   Üye ol    Giriş
248
  1. UO Scriptleri
  2. Sphere Scripts
  3. Function
  4. Karakter aktarım sistemi
Kell

Karakter aktarım sistemi

  • Kell
  • 2010-05-26 23:13
  • 0 Yorumlar
  • 1946 Görüntüleme
[FUNCTION f_bolukayir] 
IF (<EVAL STRLEN(<ARGS>)> > 3)
LOCAL.STRLEN=<EVAL STRLEN(<ARGS>)>
LOCAL.CURRENTDIGIT=<EVAL STRLEN(<ARGS>)>
WHILE (<LOCAL.CURRENTDIGIT> > 3)
ARGS=<STRSUB 0 <EVAL (<LOCAL.CURRENTDIGIT> - 3)> <ARGS>>.<STRSUB <EVAL (<LOCAL.CURRENTDIGIT> - 3)> 50 <ARGS>>
LOCAL.CURRENTDIGIT -= 3
ENDWHILE
ENDIF
RETURN <ARGS>


[function ARRAYCOUNT]
return <eval <argv>>

[FUNCTION f_array]
local.temp = <argv[<eval <argv> - 1>]> -1
return <argv[<dlocal.temp>]>

[function charkur]
db.connect
db.execute "create table acc_trans if not exists (id int unsigned not null auto_increment primary key,account_name text,account_pass text,char_name text,char_gold text,char_skills text,char_durum text);"

[function char]
for a 0 <eval <serv.accounts>-1>
for b 0 <eval <serv.account.<dlocal.a>.chars>-1>
if <serv.account.<dlocal.a>.chars> > 0
ref1 <serv.account.<dlocal.a>.char.<dlocal.b>>
db.execute "insert into acc_trans VALUES (NULL, '<serv.account.<dlocal.a>.name>', '<md5hash <serv.account.<dlocal.a>.password>>', '<ref1.name>', '<ref1.gold>', '<ref1.f_getskill>','Duruyor');"
endif
endfor
endfor

[function f_getskill]
for a 0 49
if (<uid.<uid>.<serv.skill.<dlocal.a>.name>> > 49.9)
if strmatch('<local.skill>','0')
local.skill <serv.skill.<dlocal.a>.name> <uid.<uid>.<serv.skill.<dlocal.a>.name>>
else
local.skill .=",<serv.skill.<dlocal.a>.name> <uid.<uid>.<serv.skill.<dlocal.a>.name>>"
endif
endif
endfor
return <local.skill>


[function accaktar]
sdialog d_accaktar

[dialog d_accaktar]
50,50
nomove
page 1
resizepic 0 0 5120 280 150
resizepic 10 10 3000 260 130
resizepic 40 39 3000 200 26
dtextentry 40 40 253 25 0 1 Account Name
resizepic 40 69 3000 200 26
dtextentry 40 70 253 25 0 2 Şifre
button 50 100 57 58 1 0 99999997
dhtmlgump 90 99 150 20 0 0 <def.bfont_dred> Giriş Yap
page 2
resizepic 0 0 5120 280 250
resizepic 10 10 3000 260 230
resizepic 40 39 3000 200 26
dhtmlgump 50 40 253 25 0 0 <def.bfont_dred>Hesap adı: <ctag0.acc>
resizepic 40 69 3000 200 26
dhtmlgump 50 70 253 25 0 0 <def.bfont_dred>Şifre: ********
db.connect
db.query "select * from acc_trans where account_name = '<ctag0.acc>' limit 0,4"
for x 0 4
if strmatch('<db.row.<dlocal.x>.char_durum>','Duruyor')
local.y ((<dlocal.x>*20)+115)
button 70 <eval <local.y>> 2511 2510 1 0 <eval <db.row.<dlocal.x>.id>+10>
dhtmlgump 90 <dlocal.y> 300 30 0 0 <def.bfont_dred><addslashes <db.row.<dlocal.x>.char_name>>
endif
endfor

[dialog d_accaktar button]
on=99999997
if (<isempty <argtxt[1]>>) || (<isempty <argtxt[2]>>)
sysh_trk Boş bırakmayın.
return 1
else
db.connect
db.query "select * from acc_trans where account_name = '<argtxt[1]>'"
if (<db.row.numrows> < 1)
sysh_trk Böyle bir hesap kayıtlı değil.
return 1
elif !strmatch('<db.row.0.account_pass>','<md5hash <argtxt[2]>>')
sysh_trk Şifreniz yanlış.
return 1
elif !strmatch('<db.row.0.char_durum>','Duruyor') && !strmatch('<db.row.0.char_durum>','<account.name>')
sysh_trk Bu hesapla şu an başkası ilgileniyor.
return 1
else
ctag0.acc <argtxt[1]>
sdialog d_accaktar 2
db.execute "update acc_trans set char_durum='<account.name>' where account_name='<ctag0.acc>'"
endif

on=0
db.connect
db.execute "update acc_trans set char_durum='Duruyor' where account_name='<ctag0.acc>'"

on 1 99999996
ctag.accid <eval (<argn1>-10)>
sdialog d_accaktar_ayrinti



[dialog d_accaktar_ayrinti]
50,50
nomove
page 1
resizepic 0 0 5120 280 450
resizepic 10 10 3000 260 430

dhtmlgump 70 25 300 30 0 0 <def.BFONT_red>Aktar!
button 50 25 2511 2510 1 0 1
db.connect
db.query "select * from acc_trans where id = '<eval <ctag.accid>>' limit 1"
dhtmlgump 50 *45 300 30 0 0 <def.BFONT_dblue>İsim: <def.bfont_dred><addslashes <db.row.0.char_name>>
dhtmlgump 50 *25 300 30 0 0 <def.BFONT_dblue>Altın: <def.bfont_dred><f_bolukayir <addslashes <db.row.0.char_gold>>> altın
dhtmlgump 50 *25 300 30 0 0 <def.BFONT_dblue>Yetenekler

local.y 90
for a 1 <arraycount <db.row.0.char_skills>>
local.y +=25
dhtmlgump 50 <dlocal.y> 300 30 0 0 <def.BFONT_dred><def.bfont_dred><f_array <addslashes <db.row.0.char_skills>>,<dlocal.a>>
endfor
page 2
resizepic 0 0 5120 280 180
resizepic 10 10 3000 260 160
dhtmlgump 30 20 230 80 0 0 <def.bfont_red><addslashes <db.row.0.char_name>><def.bfont_dred> isimli karakteri şu anki karakterinizle değiştirmek istediğinize emin misiniz?
dhtmlgump 30 80 230 80 0 0 <def.center><def.bfont_red>Not: Şu anki karakterinizdeki bütün yetenekleriniz sıfırlanacaktır.<def.centere>
dhtmlgump 50 125 300 30 0 0 <def.BFONT_dred>Aktar
button 20 125 2511 2510 1 0 2
dhtmlgump 50 150 300 30 0 0 <def.BFONT_red>Vazgeç!
button 20 150 2511 2510 1 0 0


[dialog d_accaktar_ayrinti button]
on=0
db.execute "update acc_trans set char_durum='Duruyor' where account_name='<ctag0.acc>'"


on=1
if !strmatch('<db.row.0.char_durum>','Duruyor') && !strmatch('<db.row.0.char_durum>','<account.name>')
sysh_trk Bu hesapla şu an başkası ilgileniyor.
return 1
else
sdialog d_accaktar_ayrinti 2
endif

on=2
allskills 0
for a 1 <arraycount <db.row.0.char_skills>>
<strarg <f_array <addslashes <db.row.0.char_skills>>,<dlocal.a>>> <streat <f_array <addslashes <db.row.0.char_skills>>,<dlocal.a>>>
endfor
gold += <db.row.0.char_gold>
sys_trk Yeni karakteriniz hayırlı olsun. <f_bolukayir <db.row.0.char_gold>> ve yetenekleriniz aktarıldı.
db.execute "delete from acc_trans where id='<eval <ctag.accid>>';"



Saveleri ve accountları bulunan eski sunucular böyle değerlendirilebilir diye düşündüm. Bazı yerlerde hatalar olabilir hiç denemedim.

Unutmadan, bu sistem hesapların md5 olarak kaydedilmediği sunucularda çalışacaktır, eğer aktarmak istediğiniz sunucuda hesaplar md5 olarak kaydediliyorsa

db.execute "insert into acc_trans VALUES (NULL, '<serv.account.<dlocal.a>.name>', '<md5hash <serv.account.<dlocal.a>.password>>', '<ref1.name>', '<ref1.gold>', '<ref1.f_getskill>','Duruyor');"

satırını

db.execute "insert into acc_trans VALUES (NULL, '<serv.account.<dlocal.a>.name>', '<serv.account.<dlocal.a>.password>', '<ref1.name>', '<ref1.gold>', '<ref1.f_getskill>','Duruyor');"

Değerlendirmeler

0 0

Total votes: 0

Üye Ol veya Giriş Yap

Bu içeriğe yorum atmak istiyorsanız hemen üye olun veya giriş yapın.

Discord ile Bağlan
Twitch ile Bağlan
Steam ile Bağlan
Google ile Bağlan

Yorumlar (0)

Henüz yorum yapılmamış
Sadece kayıtlı kullanıcılar yeni yorum yapabilir.


Ultima-Strike Discord
Benzer Sayfalar
  • En iyi 4 Karakter Yapılandirma

    2006-07-26 23:57

  • Karakter Triggerları

    2009-03-08 13:29

  • Xml'de Türkçe Karakter Sorunu

    2010-06-03 11:44

  • Knight Empire karakter seçimi

    2006-06-10 18:00

  • Skill seçimlerinizi planlamak artık çok daha kolay
    Ultima Online Karakter Yapılandırma Aracı Bölümü Açıldı!

    2024-10-31 22:47



  • Son Forumlar
  • Sayfalar
  • Administraktor
    Üyeliği 15 yıl ve üzerinde olanlar.

    Ultima Online 5 saat önce

  • Nefrelius
    Alcor UO Reborn

    Sunucular 5 gün önce

  • System_Error
    Client Patlaması

    Ultima Online 1 hafta önce

  • georgm15
    CS2 turnuvaları tartışmalı başladı.

    Counter-Strike 2 1 hafta önce

  • georgm15
    Counter-Strike 1.6 İndir - Tek Link Hızlı-

    Counter-Strike 1 hafta önce

  • Cihangir algın
    Razor Kullanımı

    RunUo Scripting 3 hafta önce

  • Lucretius
    Rampage Pvp

    Sunucular 4 hafta önce

  • Lucretius
    Nephilim Pvp

    Sunucular 4 hafta önce

  • redi4817
    NightUO

    Sunucular 4 hafta önce

  • Cengiz MERDİT
    Sphere 56T Nightly Sürümü

    Ultima Online 1 ay önce

  • aygun
    Esgaroth UO

    Sunucular 1 ay önce

  • deonist
    Alysa Pvp ( Aktif ! )

    Sunucular 1 ay önce

  • mthN
    Nebula Uo gerçekleri

    Ultima Online 2 ay önce

  • buffa
    Kullanılması Gereken Rate Ayarları

    Counter-Strike 2 ay önce

  • Lucretius
    Aktif Satılık Server !

    Sunucular 2 ay önce

  • Skill seçimlerinizi planlamak artık çok daha kolay

    Ultima Online Karakter Yapılandırma Aracı Bölümü Açıldı!

    2024-10-31 22:47

  • Ultima Online topluluğu, ClassicUO'nun sadece web client olarak kullanılabileceğinin açıklanmasının ardından tepkili.

    Resmi UO, Oyuncuları İkiye Böldü: Web Client Yeterli mi?

    2024-10-14 17:45

  • Ultima Online, ClassicUO ile resmi işbirliği yapıyor! Performans iyileştirmeleri, geniş oyun penceresi ve daha fazlası geliyor.

    Ultima Online, ClassicUO ile Resmi İşbirliğine Gidiyor

    2024-09-26 14:21

  • Centred#

    2024-07-08 22:50

  • CentrED+ 7.9

    2024-07-08 22:34

  • Distance(uzaklık) Sorgusu Hakkında

    2024-06-19 22:05

  • UoFiddler

    2024-06-01 02:19

  • UoFiddler ile Map Kopyalama

    2024-05-31 21:17

Menü
  • ANASAYFA
  • FORUM
  • DOKÜMAN
  • İNDİR
  • İLETİŞİM
  • Bağlantılar
  • CS 1.6 indir
  • CS 1.6 Türkçe
  • CS 1.6 Bot
  • CS 1.6 CFG
  • CS 1.6 Rate Ayarları
  • UO Server
  • Ghost Mouse indir
  • FPS Nedir?
  • Ultima Online PVP Server
  • Makroman
  • UO Karakter Yapılandırma
    © 2004 - 2025 Ultima-Strike. Her hakkı saklıdır.