-
Posts
1,288 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Posts posted by giver
-
-
Mi sono espresso male
praticamente devi scegliere se essere ninja mago o guerriero quindi non posso impostare lemagie dal database.
come faccio attraverso eventi?
Soul Eater si è espresso male. Le skill dipendono dalla classe associata al personaggio, non al personaggio specifico . . . Quindi puoi impostarle dal DataBase, nel pannello Classes.
C'è comunque il comando evento Change Skill, nel terzo pannello dei comandi, quasi in fondo alla prima colonna: Permette sia di aggiungere che di togliere skill ad un personaggio specifico . . .
Per sapere a quale livello è arrivato un personaggio c'è l'opzione nel Control Variables, "spuntando" actor, scegliendo il nome del personaggio, e lasciando così com'è il parametro da ottenere visto che il primo della lista è proprio Level . . .
Quindi basta usare una IF varLivelloEroe == 3, che esegue una Change Skill in caso risulti vera . . .
-
Allora, il meccanismo è semplice. Un cancello che si deve aprire quando due statue da spostare sono in due punti specifici. Ho fatto l'evento della statua con le variabili X e Y, e l'evento Posizione Statua 1 con le variabili X e Y. Ora, il problema è che spostando la statua sopra l'evento Posizione (per far sì che scatti l'apertura, visto che le 4 variabili devono essere uguali) la Statua non va sopra l'evento...nemmeno in fantasma, niente...ho provato in tutti i modi...con il 2k ci riuscivo benissimo...
Davvero hai sempre sprecato due eventi per sta cosa ? LOL
Capirei se si spostassero sia la statua che il punto che sblocca il meccanismo, ma se il punto è sempre lo stesso basta guardare quali sono le coordinate mappa del punto e confrontare la posizione della statua con questi valori fissi anzichè con altre variabili . . .
-
Hai dimenticato di inserire le istruzioni in def update . . .
In rosso ti ho segnato cosa aggiungere.
In blu, invece, ho evidenziato delle istruzioni che mi sono inventato io, perchè non so come vanno attivati gli script per la rarità e le carte: dovrai sostituirle con le chiamate corrette . . .
# _____ _ _ _ _ _
# | ____|__| (_) |_ ___ __| | | |__ _ _
# | _| / _` | | __/ _ \/ _` | | '_ \| | | |
# | |__| (_| | | || __/ (_| | | |_) | |_| |
# |_____\__,_|_|\__\___|\__,_| |_.__/ \__, |
# |___/
# ____ _
# | _ \ _ __ ___ __ _ _ __ ___ | | ___ ___ ___
# | | | | '__/ _ \/ _` | '_ ` _ \| |/ _ \/ __/ __|
# | |_| | | | __/ (_| | | | | | | | __/\__ \__ \
# |____/|_| \___|\__,_|_| |_| |_|_|\___||___/___/
#==============================================================================
# ■ Scene_Menu
#------------------------------------------------------------------------------
# メニュー画面の処理を行うクラスです。
#==============================================================================
class Scene_Menu
#--------------------------------------------------------------------------
# ● オブジェクト初期化
# menu_index : コマンドのカーソル初期位置
#--------------------------------------------------------------------------
def initialize(menu_index = 0)
@menu_index = menu_index
end
#--------------------------------------------------------------------------
# ● メイン処理
#--------------------------------------------------------------------------
def main
#@spriteset = Spriteset_Map.new
@background = Sprite.new
@background.bitmap = RPG::Cache.picture("prova_menu")
@background.x = 0
@background.y = 0
@background.z = -100
# コマンドウィンドウを作成
@icona1 = Sprite.new
@icona1.bitmap = RPG::Cache.icon("Money")
@icona1.x = 75
@icona1.opacity = 255
@icona1.y = 437
@icona1.z = 200
#Stop icone
s1 = $data_system.words.item
s2 = $data_system.words.skill
s3 = $data_system.words.equip
s4 = "Status"
s5 = "Salva"
s6 = "Esci"
s7 = "Prova"
s8 = "Prova2"
s9 = "Prova3"
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6, s7, s8, s9])
@command_window.index = @menu_index
# パーティ人数が 0 人の場合
if $game_party.actors.size == 0
# アイテム、スキル、装備、ステータスを無効化
@command_window.disable_item(0)
@command_window.disable_item(1)
@command_window.disable_item(2)
@command_window.disable_item(3)
end
# セーブ禁止の場合
if $game_system.save_disabled
# セーブを無効にする
@command_window.disable_item(4)
end
# プレイ時間ウィンドウを作成
@playtime_window = Window_PlayTime.new
@playtime_window.x = 224
@playtime_window.y = 224
# 歩数ウィンドウを作成
@steps_window = Window_Steps.new
@steps_window.x = 0
@steps_window.y = 320
# ゴールドウィンドウを作成
@gold_window = Window_Gold.new
@gold_window.x = 0
@gold_window.y = 416
# ステータスウィンドウを作成
@status_window = Window_MenuStatus.new
@status_window.x = 160
@status_window.y = 0
# トランジション実行
Graphics.transition
# メインループ
loop do
# ゲーム画面を更新
Graphics.update
# 入力情報を更新
Input.update
# フレーム更新
update
# 画面が切り替わったらループを中断
if $scene != self
break
end
end
# トランジション準備
Graphics.freeze
# ウィンドウを解放
@background.dispose
@command_window.dispose
@playtime_window.dispose
@steps_window.dispose
@gold_window.dispose
@status_window.dispose
if @prova != nil
@prova.dispose
end
@icona1.bitmap.dispose
@icona1.dispose
@background.bitmap.dispose
@background.dispose
end
#--------------------------------------------------------------------------
# ● フレーム更新
#--------------------------------------------------------------------------
def update
# ウィンドウを更新
@command_window.update
@playtime_window.update
@steps_window.update
@gold_window.update
@status_window.update
if @prova != nil
@prova.update
end
@icona1.update
# コマンドウィンドウがアクティブの場合: update_command を呼ぶ
if @command_window.active
update_command
return
end
#
if @prova != nil and @prova.active
update_prova
return
end
# ステータスウィンドウがアクティブの場合: update_status を呼ぶ
if @status_window.active
update_status
return
end
end
#--------------------------------------------------------------------------
# ● フレーム更新 (コマンドウィンドウがアクティブの場合)
#--------------------------------------------------------------------------
def update_prova
# If B button was pressed
if Input.trigger?(Input::B)
# Play cancel SE
$game_system.se_play($data_system.cancel_se)
# Make command window active
@command_window.active = true
@prova.active = false
@prova.dispose
return
end
# If C button was pressed
if Input.trigger?(Input::C)
# Branch cursor position
case @prova.index
when 0 # item
# Play decision SE
$game_system.se_play($data_system.decision_se)
# Switch to item screen
$scene = Scene_Item.new
when 1 # rarity
# Play decision SE
$game_system.se_play($data_system.decision_se)
# Switch to rarity screen
$scene = Scene_Rarity.new
when 2 # card
# Play decision SE
$game_system.se_play($data_system.decision_se)
# Switch to card screen
$scene = Scene_Card.new
end
return
end
end
#--------------------------------------------------------------------------
# ● フレーム更新 (コマンドウィンドウがアクティブの場合)
#--------------------------------------------------------------------------
def update_command
# B ボタンが押された場合
if Input.trigger?(Input::B)
$game_system.se_play($data_system.cancel_se)
$scene = Scene_Map.new
return
end
# C ボタンが押された場合
if Input.trigger?(Input::C)
# パーティ人数が 0 人で、セーブ、ゲーム終了以外のコマンドの場合
if $game_party.actors.size == 0 and @command_window.index < 4
# ブザー SE を演奏
$game_system.se_play($data_system.buzzer_se)
return
end
# コマンドウィンドウのカーソル位置で分岐
case @command_window.index
when 0 # アイテム
$game_system.se_play($data_system.decision_se)
# Chiama Item
@command_window.active = true
s1 = "Oggetti"
s2 = "Rarità"
s3 = "Carte"
@prova = Window_Command.new(192, [s1, s2, s3])
@prova.back_opacity = 160
@prova.x = 320 - @prova.width / 2
@prova.y = 288
@prova.active = true
@prova.index = 0
when 1 # スキル
$game_system.se_play($data_system.decision_se)
$scene = Scene_Skill.new
when 2 # 装備
$game_system.se_play($data_system.decision_se)
$scene = Scene_Equip.new
when 3 # ステータス
$game_system.se_play($data_system.decision_se)
$scene = Scene_Status.new
when 4 # セーブ
# セーブ禁止の場合
if $game_system.save_disabled
# ブザー SE を演奏
$game_system.se_play($data_system.buzzer_se)
return
end
# 決定 SE を演奏
$game_system.se_play($data_system.decision_se)
# セーブ画面に切り替え
$scene = Scene_Save.new
when 5 # ゲーム終了
# 決定 SE を演奏
$game_system.se_play($data_system.decision_se)
# ゲーム終了画面に切り替え
$scene = Scene_End.new
when 6 # ゲーム終了
# 決定 SE を演奏
$game_system.se_play($data_system.decision_se)
# ゲーム終了画面に切り替え
$scene = Scene_End.new
when 7 # ゲーム終了
# 決定 SE を演奏
$game_system.se_play($data_system.decision_se)
# ゲーム終了画面に切り替え
$scene = Scene_Save.new
when 8 # ゲーム終了
# 決定 SE を演奏
$game_system.se_play($data_system.decision_se)
# ゲーム終了画面に切り替え
$scene = Scene_End.new
end
return
end
end
#--------------------------------------------------------------------------
# ● フレーム更新 (ステータスウィンドウがアクティブの場合)
#--------------------------------------------------------------------------
def update_status
# B ボタンが押された場合
if Input.trigger?(Input::B)
# キャンセル SE を演奏
$game_system.se_play($data_system.cancel_se)
# コマンドウィンドウをアクティブにする
@command_window.active = true
@status_window.active = false
@status_window.index = -1
return
end
# C ボタンが押された場合
if Input.trigger?(Input::C)
# コマンドウィンドウのカーソル位置で分岐
case @command_window.index
when 1 # スキル
# このアクターの行動制限が 2 以上の場合
if $game_party.actors[@status_window.index].restriction >= 2
# ブザー SE を演奏
$game_system.se_play($data_system.buzzer_se)
return
end
# 決定 SE を演奏
$game_system.se_play($data_system.decision_se)
# スキル画面に切り替え
$scene = Scene_Skill.new(@status_window.index)
when 2 # 装備
# 決定 SE を演奏
$game_system.se_play($data_system.decision_se)
# 装備画面に切り替え
$scene = Scene_Equip.new(@status_window.index)
when 3 # ステータス
# 決定 SE を演奏
$game_system.se_play($data_system.decision_se)
# ステータス画面に切り替え
$scene = Scene_Status.new(@status_window.index)
end
return
end
end
end
-
Il codice che ho inserito prima l'ho messo in def update_command nel campo when 0 ovvero quando premi invio su Items!
Suppongo che l'errore stia li!
Hai solo cambiato il nome della variabile da @Prova a @prova, giusto ?
Io ti ho elencato altre cose da fare, perchè solo il codice che hai scritto non è sufficiente a farla funzionare.
Personalmente la gestirei in altro modo, comunque, per come hai scelto di gestirla tu, eccoti alcune indicazioni:
Alla fine del def main di Scene_Menu, dopo @status_window.dispose, inserisci
if @prova != nil @prova.dispose end
Vai nel metodo def update della Scene e all'inizio vedrai una serie di @nome_finestra.update.
Dopo l'ultima di queste istruzioni aggiungi
if @prova != nil @prova.update end
poi più sotto
if @prova != nil and @prova.active update_prova return end
aggiungi in fondo al codice che hai creato all'inizio, sotto @prova.active = true
@prova.index = 0
questa è la parte più difficile, cioè devi creare il codice che dice cosa accade quando si fa una scelta in @prova . . . Quello che ti posto è solo un esempio e dovrai "aggiustarlo" come riterrai opportuno . . .
Va messo tra le ultime due righe di Scene_Menu, che sono due end
def update_prova # If B button was pressed if Input.trigger?(Input::B) # Play cancel SE $game_system.se_play($data_system.cancel_se) # Make command window active @command_window.active = true @prova.active = false @prova.dispose return end # If C button was pressed if Input.trigger?(Input::C) # Branch cursor position case @prova.index when 0 # item # Play decision SE $game_system.se_play($data_system.decision_se) # Switch to item screen $scene = Scene_Item.new when 1 # rarity # Play decision SE $game_system.se_play($data_system.decision_se) # Switch to equipment screen $scene = Scene_Rarity.new when 2 # card # Play decision SE $game_system.se_play($data_system.decision_se) # Switch to status screen $scene = Scene_Card.new end return end end
Adesso dovresti avere elementi sufficienti per andare avanti da solo . . .
-
Devi aggiungere delle istruzioni per @prova in (def) update e creare il metodo (def) update_prova.
Per chiarirti le idee su cosa fare, guarda in update cosa viene fatto per @command_window e @status_window, più i relativi metodi (def) update_command ed (def) update_status . . .
PS: In ruby è buona norma denominare le variabili usando solo lettere minuscole, ed usare l'iniziale maiuscola solo per le costanti, quindi sarebbe meglio usare @prova invece di @Prova . . .
-
Per avere il valore di una variabile si pone $game_variables[numerovariabile] in una variabile locale o direttamente come parametro del comando in cui va usato il suo valore.
Es. Voglio settare le coordinate con le variabili 4 e 5.
Posso impostarla così:
Script: cx =$game_variables[4] cy = $game_variables[5] $game_screen.pictures[3].show("immagine1", 1, cx, cy, 100, 100, 255, 1)Oppure così:
Script: $game_screen.pictures[3].show("immagine1", 1, $game_variables[4], $game_variables[5], 100, 100, 255, 1)Per avere nomi di file "variabili" basta chiamare le pictures "nomeelementoNUMERO", dove numero sarà prelevato da una normalissima variabile. Il nome delle picture non deve contenere zeri di riempimento.
Es. Voglio mostrare delle cifre indicando il numero picture nella variabile 7 e il numero della cifra da mostrare nella variabile 11. Le picture che uso si chiamano "cifra0", "cifra1", ecc.
Script: cx =$game_variables[4] cy = $game_variables[5] npic = $game_variables[7] pname = "cifra" + $game_variables[11].to_s $game_screen.pictures[npic].show(pname, 1, cx, cy, 100, 100, 255, 1)
Notare che pname non è tra virgolette in quanto è il nome della variabile che contiene quello della picture . . .
Ricordo inoltre che questo sistema lo si può usare anche mantenendo il limite di 50 picture . . .
-
un lieve OT scusate. ma un chara di dimensioni non consone alle dimensioni degli eventi, crea problemi di interazione con gli eventi a contatto, pressione di invio ecc?
Di base sì, si può interagire solo con la "casella" base dell'evento-mappa, ma so che esiste uno script per gestire "meglio" le interazioni tra chara grandi, anche se, da quello che ho capito, non lo fa proprio perfettamente . . .
Questo per l'XP, per il VX non lo so . . .
-
Il comando evento Control Variables permette di recuperare sia gli HP massimi che quelli attuali di un actor nel party . . .
Per ottenere una percentuale basta che metti in una variabile gli HP attuali del personaggio e li moltiplichi per 100, poi metti gli HP Massimi in un'altra variabile e dividi la prima variabile, quella con HP*100, per la seconda, quella con HP Max.
La percentuale viene sempre arrotondata per difetto, ossia un personaggio con 350 HP Max che ne perde solo 1, scendendo a 349 HP, avrà una percentuale del 99%, anche se i decimali la porterebbero più vicina al 100% . . .
Un modo per arrotondare all'intero più vicino consiste, dopo aver moltiplicato per 100 la prima variabile, nel mettere gli HP massimi nella seconda variabile e dividerli per 2, aggiungendo il valore ottenuto a quello nella prima variabile, quindi mettere gli HP Max nella seconda variabile ed eseguire la divisione, come spiegato prima . . .
EDIT - Per l'arrotondamento all'intero più vicino avevo detto di dividere per 2 gli HP attuali invece di quelli massimi . . .
-
Il percorso completo è:
C:\Programmi\File comuni\Enterbrain\RGSS\Standard
Quell'errore non l'ho mai visto...l'importante è che se premi ok il gioco parte ^^
A me la traduzione ufficiale inglese della Enterbrain le ha installate in C:\Program Files\Common Files\Enterbrain\RGSS\Standard\
Comunque puoi usare la funzione cerca del sistema operativo per cercare RGSS, se nessuno dei percorsi ti permette di trovarle . . .
Per l'errore, credo che sia dovuto al numero di applicazioni aperte contemporaneamente rispetto a quelle che può gestire il tuo computer. Mi pare di vederne attive, sulla traybar, almeno 8-9 . . .
-
mmm, ho provato e non funziona. Ho incollato lo script principale sopra lo script main poi ho messo
un evento in processo parallelo col seguente script:
$game_screen.pictures[3].show(immagine1, Center, 320, 240, 100, 100, 255, Normal)
l'immagine si chiama "immagine1" ovviamente, quindi dovrebbe funzionare invece mi dice (appena entro nella mappa con l'evento): SyntaxError occurred while runniing script.
Boh... Che c'è di sbagliato?
Dovrebbe essere scritta così per funzionare
$game_screen.pictures[3].show("immagine1", 1, 320, 240, 100, 100, 255, 1)EDIT - E se non ci sta su una riga sola del pannellino script, vai a capo dopo una delle virgole, dopo la parentesi aperta o dopo uno dei punti . . .
-
Non funziona. Ma il file devo metterlo nella cartella Tileset oppure inserirlo proprio nel tileset?!
Deve essere messo in Tileset, ma deve chiamarsi footprints_default.png . . .
-
Non funziona, puoi spiegare meglio dove va messo il code?
Tecnicamente dovrebbe andare nello script Main, ossia l'ultimo nella lista degli script, subito dopo begin . . .
Ma se cerchi tra gli script di questo forum il Main modificato da DaD e lo sostituisci a quello del progetto, include una versione funzionante di questa procedura, anche se parte a schermo intero solo quando fai doppio clic sul Game.exe del progetto . . . All'interno di Rpg Maker viene sempre eseguito in finestra, che è la cosa migliore . . .
-
bn ora ho corretto(avevo settato 2 img ed invece ne avevo messa sl 1a
... ora mi da errore alla riga 34 ç_ç
undefined method for bitmap':nil class
Prova ad eliminare il +1 finale della riga 33 . . .
Ossia, c'è scritto così
if @index == @number_max+1
e prova a cambiarla così
if @index == @number_max # +1
Io purtroppo non la posso testare perchè non ho il VX . ..
-
@saixelement
Non dovrebbe. È solo per RPG Maker VX, poiché nell'XP no esiste il metodo opacity.
Veramente il metodo opacity per gli sprite c'è anche nell'XP . . .
Anche se non credo sia quello il problema . . .
Forse non ha inserito le immagini nella cartella Picture o non le ha denominate nel modo giusto . . .
Va fatta la stessa cosa del file musicale, ossia scegliere un nome comune a tutte le immagini della intro, da inserire al posto di "NomeImmagineBase" per la variabile @name_im (ossia la prima dopo def start, dichiarare quante immagini compongono l'intro, e le immagini usate devono avere come nome il valore di @name_im + il numero d'ordine dell'immagine nell'intro, senza zeri che lo precedono anche se le "slide" sono 10 o più . ..
Es. Setto la variabile @name_im = "slide", per una intro composta da 12 immagini (quindi @number_max = 12), e le immagini nella cartella Picture dovranno perciò chiamarsi "slide1", "slide2", "slide3", "slide4", . . ., "slide10", "slide11", e "slide12" . . .
-
Con lo script di the joker, le luci non si accendono/spengono insieme al ciclo giorno/notte, io ho provato in diversi modi ma niente, quindi faccio prima con gli eventi, perchè di script non ne so una cippa. XD
Se è quello il problema, è facilmente risolvibile, visto che per un altro utente ho modificato il light system affinchè le luci si attivassero e spegnessero mettendo ON ed OFF uno switch a scelta di chi realizza il gioco . . .
Quindi dovrebbe bastare l'inserimento dell'istruzione che gestisce lo switch nei punti del ciclo giorno e notte che cambiano il tint screen . . .
-
più che altro manca all'appello il wave compresso al quale ero molto interessato.....
qualcuno sa dov'è finito?
Dovrebbe essere questo . . . Scarica WaveCompressor @ Mediafire
-
Il nome che viene usato nello script non è quello del personaggio, ma l'immagine del face deve chiamarsi come l'immagine che rappresenta il personaggio sulla mappa . . .
Es. Se il chara associato all'eroe si chiama "fighter-001", il face nella cartella picture si dovrà chiamare anch'esso "fighter-001" . . .
-
Giver, vuol dire che con il ciclo giorno/notte, la luce cambia colore con il Tint Screen...
Se usando gli eventi con lo spunta sull'opzione sopra ogni cosa si aggira questo difetto, allora non dovrebbe essere difficile correggere lo script affinchè le luci generate restino immutate . . .
O si potrebbe usare per le luci uno "sprite-tint" opposto a quello dello schermo, non saprei . . .
-
Basta usare un Evento Comune in processo parallelo che parte con lo stesso switch che fa partire il menù ed inserirci un semplice Muovi Evento per il PG, in cui il passo da eseguire sia Aspetta 4 frames (Importante: A Ripeti movimento ed a Ignora se bloccato NON va messo il segno di spunta). Ovviamente anche il menù, in questo caso, deve essere in processo parallelo . . .
OPPURE
L'Evento Comune del menù deve essere ad Autoinizio . . .
Il primo sistema sono sicuro che funziona, mentre il secondo non saprei . . .
-
Si l'ho visto, ma non funziona con il ciclo giorno e notte
Quale ciclo giorno e notte ?
In che senso non funziona ?
-
Guarda il motivo per cui lo script te l'ho realizzato con riferimento via variabile è perchè per muovere, dichiarare o qualsiasi altra operazione via picture servono un boato di argomenti, guarda questo è il solo comando per mostrare la picture:
$game_screen.pictures[NUMERO].show(NOME, ORIGINE, X, Y, ZOOMX, ZOOMY, OPACITA, BLENDING)
Con questo sistema, però, anche se l'istruzione è lunga, ottieni due ottimi benefici, anche quando non hai bisogno di più di 50 pictures: puoi risparmiare sulla quantità di comandi-evento per Picture e puoi definire tutti i parametri del comando tramite variabili (cosa che, tra l'altro, permette una maggiore riutilizzabilità del "codice") . . .
Per l'Orologio-Datario ad eventi che ho realizzato per regan avrei usato questo sistema, se non avessi temuto di rendere difficile eventuali modifiche/personalizzazioni del "codice" a regan e ai principianti interessati a capire come era stato realizato . . .
@MaC: Se non hai paura di incasinarti con questo metodo, ti consiglierei di accettare la proposta di Sleeping . . .
-
Aggiustare i valori delle due variabili, sottraendo le misure dei rispettivi margini "scoperti", prima di eseguire il Mostra Picture ?
-
Ma ti serve davvero aggiornarle, come minimo, 20 volte al secondo ?
Hai provato a inserire un comando Aspetta all'inizio dell'evento che disegna le pictures ?
Lo so che è scomodo, ma se non basta inserire l'aspetta per annullare il lag, dovresti semplicemente convertirlo in evento comune di tipo None e chiamarlo come parte dell'evento che causa i danni o ne rigenera il valore, OPPURE Usare una variabile in più per ogni valore che mostri nell'HUD: in queste variabili metti il valore della caratteristica dopo aver aggiornato le picture, all'inizio dell'Evento Comune prelevi il valore di quella caratteristica come fai per aggiornare le pictures, solo in una delle variabili, però (es. Unità HP), confronti questa variabile con quella che contiene l'ultimo valore mostrato e solo se sono diverse fai i calcoli e ridisegni le pictures . . .
Io purtroppo faccio gran fatica a spiegarmi come si deve. Spero si sia capito comunque cosa intendo . . .
-
Cioè, fammi capire...Se io metto per esempio gli eventi di due palle che rotolano, se li faccio entrambi Autostart partono una dopo l'altra, invece se una è Parallel partono insieme?
Devono essere entrambe processi paralleli che si attivano alle stesse condizioni affinchè partano assieme: se una è autostart funziona solo quella finchè resta attivo l'evento, e se sono entrambe autostart o ne parte una o, più probabile, ti si impalla il gioco . . .
Quando è attivo un evento Autostart, funziona solo quello e gli eventi/script chiamati da quello . . . Tutto il resto resta bloccato finchè l'autostart non smette di funzionare . . .
In altri termini, in un qualunque momento ci può essere un solo Autostart attivo, e mentre è attivo è l'unica cosa che funziona nel gioco . . .

Cercasi Unhla32.dll
in Supporto 2K/2K3
Posted
Io non ho il 2k3, ma l'ho trovata in un gioco fatto con il 2k3, quindi dovrebbe essere questa . . .
Scarica UNLHA32.DLL @ Mediafire