21.YILTü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
  • FORUM
  • DOKÜMAN
  • İNDİR
   Üye ol    Giriş
71
37
  1. Anasayfa
  2. UO Scriptleri
  3. Sphere Scripts
  4. Function
  5. Karakter aktarım sistemi
Kell

Karakter aktarım sistemi

  • Kell
  • 2010-05-26 23:13
  • 0 Yorumlar
  • 2054 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
  • Nefrelius
    Alcor UO Reborn

    Sunucular 16 saat önce

  • EgeERKEK
    Ultima Online'da Alkol Üretme Sistemi!

    Ultima Online 1 gün önce

  • Lucretius
    Son yıllarda UO tercihiniz: RP, PP (Power Play)...

    Ultima Online 3 gün önce

  • Syntax
    UO:Nimloth Yeniden Doğuyor !

    Sunucular 3 gün önce

  • Fream
    Üyeliği 18 yıl ve üstünde olanlar.

    Ultima Online 3 gün önce

  • Fream
    Üyeliği 15 yıl ve üzerinde olanlar.

    Ultima Online 3 gün önce

  • megastro.uokings
    Nephilim Pvp

    Sunucular 4 gün önce

  • Tymaron
    Oyuncuları & Yaratıkları Güçlendiren O Gizli...

    Ultima Online 5 gün önce

  • Deathwave
    UO'nun 4K remaster projesi var, grafiklere bir...

    Ultima Online 1 hafta önce

  • Lucretius
    UO Connector Kullanım Koşulları

    Ultima Online 1 hafta önce

  • Lucretius
    Server kurulumu Hata

    Ultima Online 1 hafta önce

  • sarhos7573
    Royal UO

    Sunucular 1 hafta önce

  • İlkeler Medya
    Mul Dosyaları Hazırlıcak Arkadaş Aranıyor

    Ultima Online 1 hafta önce

  • Albatros
    NightUO

    Sunucular 1 hafta önce

  • morfin59
    Arkadaslar Potionlarin Üst üste Düsürme Nasil??

    Sphere Scripting 3 hafta önce

  • Yeni Başlayanlar İçin Ultima Online

    2025-11-27 19:07

  • 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

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.