mAsTeR Posted November 1, 2006 Share Posted November 1, 2006 allora GO DUE DOMANDE: 1) Non trovo piu' lo script che permette di inserire charset con 8 direzioni invece delle normali 4 2) Avevo la versione con 7 sprites per direzione ( 7 x 8 )... sono per caso uscite nuove versioni dello script per esempio 9 x 8 ??? grazias http://rpg2s.net/gif/SCContest1Oct.gifhttp://alpha85.altervista.org/_altervista_ht/banner_eViL.png Project: eViL CHAPTER I: IL SUPREMO | Powered by: PhoenixSoft |Home site Link to comment Share on other sites More sharing options...
0 ZerotheQueen Posted November 1, 2006 Share Posted November 1, 2006 Eccolo, è 8x9 frames. RImpiazza la classe game_player con:#==============================================================================# ■ Game_Player#------------------------------------------------------------------------------# プレイヤーを扱うクラスです。イベントの起動判定や、マップのスクロールなどの# 機能を持っています。このクラスのインスタンスは $game_player で参照されます。#============================================================================== class Game_Player < Game_Character#--------------------------------------------------------------------------# ● 定数#--------------------------------------------------------------------------CENTER_X = (320 - 16) * 4 # 画面中央の X 座標 * 4CENTER_Y = (240 - 16) * 4 # 画面中央の Y 座標 * 4#--------------------------------------------------------------------------# ● 通行可能判定# x : X 座標# y : Y 座標# d : 方向 (0,2,4,6,8) ※ 0 = 全方向通行不可の場合を判定 (ジャンプ用)#--------------------------------------------------------------------------def passable?(x, y, d)# 新しい座標を求めるnew_x = x + (d == 6 ? 1 : d == 4 ? -1 : 0)new_y = y + (d == 2 ? 1 : d == 8 ? -1 : 0)# 座標がマップ外の場合 unless $game_map.valid?(new_x, new_y) # 通行不可return falseend# デバッグモードが ON かつ CTRL キーが押されている場合if $DEBUG and Input.press?(Input::CTRL)# 通行可return trueendsuperend#--------------------------------------------------------------------------# ● 画面中央に来るようにマップの表示位置を設定#--------------------------------------------------------------------------def center(x, y)max_x = ($game_map.width - 20) * 128max_y = ($game_map.height - 15) * 128$game_map.display_x = [0, [x * 128 - CENTER_X, max_x].min].max$game_map.display_y = [0, [y * 128 - CENTER_Y, max_y].min].maxend#--------------------------------------------------------------------------# ● 指定位置に移動# x : X 座標# y : Y 座標#--------------------------------------------------------------------------def moveto(x, y)super# センタリングcenter(x, y)# エンカウント カウントを作成make_encounter_countend#--------------------------------------------------------------------------# ● 歩数増加#--------------------------------------------------------------------------def increase_stepssuper# 移動ルート強制中ではない場合unless @move_route_forcing# 歩数増加$game_party.increase_steps # 歩数が偶数の場合if $game_party.steps % 2 == 0# スリップダメージチェック$game_party.check_map_slip_damageendendend#--------------------------------------------------------------------------# ● エンカウント カウント取得#--------------------------------------------------------------------------def encounter_countreturn @encounter_countend#--------------------------------------------------------------------------# ● エンカウント カウント作成#--------------------------------------------------------------------------def make_encounter_count# サイコロを 2 個振るイメージif $game_map.map_id != 0n = $game_map.encounter_step@encounter_count = rand(n) + rand(n) + 1endend#--------------------------------------------------------------------------# ● リフレッシュ#--------------------------------------------------------------------------def refresh# パーティ人数が 0 人の場合if $game_party.actors.size == 0# キャラクターのファイル名と色相をクリア@character_name = ""@character_hue = 0# メソッド終了returnend# 先頭のアクターを取得actor = $game_party.actors[0]# キャラクターのファイル名と色相を設定@character_name = actor.character_name@character_hue = actor.character_hue# 不透明度と合成方法を初期化@opacity = 255@blend_type = 0end#--------------------------------------------------------------------------# ● 同位置のイベント起動判定#--------------------------------------------------------------------------def check_event_trigger_here(triggers)result = false# イベント実行中の場合if $game_system.map_interpreter.running?return resultend# 全イベントのループfor event in $game_map.events.values# イベントの座標とトリガーが一致した場合if event.x == @x and event.y == @y and triggers.include?(event.trigger)# ジャンプ中以外で、起動判定が同位置のイベントならif not event.jumping? and event.over_trigger?event.startresult = trueendendendreturn resultend#--------------------------------------------------------------------------# ● 正面のイベント起動判定#--------------------------------------------------------------------------def check_event_trigger_there(triggers)result = false# イベント実行中の場合if $game_system.map_interpreter.running?return resultend# 正面の座標を計算new_x = @x + (@direction == 6 ? 1 : @direction == 4 ? -1 : 0)new_y = @y + (@direction == 2 ? 1 : @direction == 8 ? -1 : 0)# 全イベントのループfor event in $game_map.events.values# イベントの座標とトリガーが一致した場合if event.x == new_x and event.y == new_y andtriggers.include?(event.trigger)# ジャンプ中以外で、起動判定が正面のイベントならif not event.jumping? and not event.over_trigger?event.startresult = trueendendend# 該当するイベントが見つからなかった場合if result == false# 正面のタイルがカウンターならif $game_map.counter?(new_x, new_y)# 1 タイル奥の座標を計算new_x += (@direction == 6 ? 1 : @direction == 4 ? -1 : 0)new_y += (@direction == 2 ? 1 : @direction == 8 ? -1 : 0)# 全イベントのループfor event in $game_map.events.values# イベントの座標とトリガーが一致した場合if event.x == new_x and event.y == new_y andtriggers.include?(event.trigger)# ジャンプ中以外で、起動判定が正面のイベントならif not event.jumping? and not event.over_trigger?event.startresult = trueendendendendendreturn resultend#--------------------------------------------------------------------------# ● 接触イベントの起動判定#--------------------------------------------------------------------------def check_event_trigger_touch(x, y)result = false# イベント実行中の場合if $game_system.map_interpreter.running?return resultend# 全イベントのループfor event in $game_map.events.values# イベントの座標とトリガーが一致した場合if event.x == x and event.y == y and [1,2].include?(event.trigger)# ジャンプ中以外で、起動判定が正面のイベントならif not event.jumping? and not event.over_trigger?event.startresult = trueendendendreturn resultend#--------------------------------------------------------------------------# ● フレーム更新#--------------------------------------------------------------------------def updateif$game_variables[001]==1# ローカル変数に移動中かどうかを記憶last_moving = moving?# 移動中、イベント実行中、移動ルート強制中、# メッセージウィンドウ表示中のいずれでもない場合unless moving? or $game_system.map_interpreter.running? or@move_route_forcing or $game_temp.message_window_showing# 方向ボタンが押されていれば、その方向へプレイヤーを移動case Input.dir8 when 0 $game_variables[004]=0 when 1 move_lower_left$game_variables[004]=1$game_variables[005]=1 when 2 move_down$game_variables[004]=2$game_variables[005]=2 when 3 move_lower_right$game_variables[004]=3$game_variables[005]=3 when 4 move_left$game_variables[004]=4$game_variables[005]=4 when 6 move_right$game_variables[004]=6$game_variables[005]=6 when 7 move_upper_left$game_variables[004]=7$game_variables[005]=7 when 8 move_up$game_variables[004]=8$game_variables[005]=8 when 9 move_upper_right$game_variables[004]=9$game_variables[005]=9 endendend# ローカル変数に座標を記憶last_real_x = @real_xlast_real_y = @real_ysuper# キャラクターが下に移動し、かつ画面上の位置が中央より下の場合if @real_y > last_real_y and @real_y - $game_map.display_y > CENTER_Y# マップを下にスクロール$game_map.scroll_down(@real_y - last_real_y)end# キャラクターが左に移動し、かつ画面上の位置が中央より左の場合if @real_x < last_real_x and @real_x - $game_map.display_x < CENTER_X# マップを左にスクロール$game_map.scroll_left(last_real_x - @real_x)end# キャラクターが右に移動し、かつ画面上の位置が中央より右の場合if @real_x > last_real_x and @real_x - $game_map.display_x > CENTER_X# マップを右にスクロール$game_map.scroll_right(@real_x - last_real_x)end# キャラクターが上に移動し、かつ画面上の位置が中央より上の場合if @real_y < last_real_y and @real_y - $game_map.display_y < CENTER_Y# マップを上にスクロール$game_map.scroll_up(last_real_y - @real_y)end# 移動中ではない場合unless moving?# 前回プレイヤーが移動中だった場合if last_moving# 同位置のイベントとの接触によるイベント起動判定result = check_event_trigger_here([1,2])# 起動したイベントがない場合if result == false# デバッグモードが ON かつ CTRL キーが押されている場合を除きunless $DEBUG and Input.press?(Input::CTRL)# エンカウント カウントダウンif @encounter_count > 0@encounter_count -= 1endendendend# C ボタンが押された場合if Input.trigger?(Input::C)# 同位置および正面のイベント起動判定check_event_trigger_here([0])check_event_trigger_there([0,1,2])endendendendE sprite_character con:#==============================================================================# ■ Sprite_Character#------------------------------------------------------------------------------# キャラクター表示用のスプライトです。Game_Character クラスのインスタンスを# 監視し、スプライトの状態を自動的に変化させます。#============================================================================== class Sprite_Character < RPG::Sprite#--------------------------------------------------------------------------# ● 公開インスタンス変数#--------------------------------------------------------------------------attr_accessor :character # キャラクター#--------------------------------------------------------------------------# ● オブジェクト初期化# viewport : ビューポート# character : キャラクター (Game_Character)#--------------------------------------------------------------------------def initialize(viewport, character = nil)super(viewport)@character = characterupdateend#--------------------------------------------------------------------------# ● フレーム更新#--------------------------------------------------------------------------def update super if @tile_id != @character.tile_id or @character_name != @character.character_name or @character_hue != @character.character_hue @tile_id = @character.tile_id @character_name = @character.character_name @character_hue = @character.character_hue if @tile_id >= 384 self.bitmap = RPG::Cache.tile($game_map.tileset_name, @tile_id, @character.character_hue) self.src_rect.set(0, 0, 32, 32) self.ox = 16 self.oy = 32 else self.bitmap = RPG::Cache.character(@character.character_name, @character.character_hue) @cw = bitmap.width / 9 @ch = bitmap.height / 8 self.ox = @cw / 2 self.oy = @ch end end self.visible = (not @character.transparent) if @tile_id == 0 sx = @character.pattern * @cw dir = @character.direction dec = (dir == 7 or dir== 9) ? 3 : 1 sy = (dir - dec) * @ch self.src_rect.set(sx, sy, @cw, @ch) end self.x = @character.screen_x self.y = @character.screen_y self.z = @character.screen_z(@ch) self.opacity = @character.opacity self.blend_type = @character.blend_type self.bush_depth = @character.bush_depth if @character.animation_id != 0 animation = $data_animations[@character.animation_id] animation(animation, true) @character.animation_id = 0 end end end http://img214.imageshack.us/img214/6732/r2scopytk5.png Raxen - Scission of God Cerchiamo collaboratori (Musicisti, Grafici e Scripter) per un nuovo progetto fantasy! Rhaxen Scission of God BASTA AL MAKING ITALIANO CHE VA A ROTOLI! DIAMOCI UNA SVEGLIATA!!BASTA ALLE SOLITE BANALI DISCUSSIONI SULLA DECADENZA DEI GIOCHI!! FACCIAMOLI STI GIOCHI!!!APRITE LO SPOILER E LEGGETE IL MANIFESTO DEL MAKING ITALIANO, SE DAVVERO VE NE IMPORTA QUALCOSA!! Il Manifesto del Making Italiano SALVIAMO IL MAKING ITALIANO!!Dopo un test dei nostri esperti (Alato, Blake e havana24) abbiamo scoperto che ad interesse risponde interesse: cioè se voi dimostrate di essere interessati a ciò che creano gli altri, questi saranno stimolati a continuare a creare! E' un concetto semplice ma estremamente sottovalutato, basta vedere quanti topic di bei giochi sono caduti nel dimenticatoio e sono stati cagati solo da poche persone (prendiamo per esempio il fantastico gioco di Vech che vi invito a vedere nella sezione RM2k).Perciò quello che dobbiamo fare è: leggere, leggere, leggere, postare, postare, postare! E questo non significa postare a caso, ma leggere per bene il progetto di qualcuno, le domande poste, le creazioni grafiche e musicali, e fare dei post in cui si propongano miglioramenti, si critichino le brutture, si esaltino le bellezze, si aiutino gli oppressi etc etcBASTA AL MAKING ITALIANO CHE VA A ROTOLI! DIAMOCI UNA SVEGLIATA!!Per dimostrarvi ciò che sto esponendo vi riporto che la volta in cui abbiamo provato (Alato, Blake e havana24) a fare una cosa di questo genere, c'è costata un pomeriggio ma il giorno dopo abbiamo ottenuto il numero massimo di utenti online mai raggiunto!!! Ma soprattutto ciò significa che l'interesse riguardo al making era stato, almeno momentaneamente, risvegliato!!Voi pensate che eravamo solo in 3 a cercare tutti i topic e ravvivarli (con sincerità e senza i soliti falsi "Oh che bello.", ma anche con critiche per lavori incompleti o assurdi) e abbiamo ottenuto quel grande risultato: se lo facessimo tutti non sarebbe una cosa potentissima?!?BASTA ALLE SOLITE BANALI DISCUSSIONI SULLA DECADENZA DEI GIOCHI!! FACCIAMOLI STI GIOCHI!!!Chi è contrario a questa cosa, può pure continuare così ma è una persona che col making non ha nulla a che fare, ma chi crede nel making inizi ora, immediatamente a seguire questa linea di pensiero! Ma chi è d'accordo, chi davvero ci tiene al making, incolli questo Manifesto nella propria firma!! Mettete anche voi questa firma!! Link to comment Share on other sites More sharing options...
0 mAsTeR Posted November 1, 2006 Author Share Posted November 1, 2006 ma grassie :nn: http://rpg2s.net/gif/SCContest1Oct.gifhttp://alpha85.altervista.org/_altervista_ht/banner_eViL.png Project: eViL CHAPTER I: IL SUPREMO | Powered by: PhoenixSoft |Home site Link to comment Share on other sites More sharing options...
0 -Akm- Posted November 10, 2006 Share Posted November 10, 2006 Strano, l'ho provato su di un progetto vuoto e semplicemente...il chara non si muove O_O com'è possibile? Link to comment Share on other sites More sharing options...
0 Reyden Posted March 29, 2007 Share Posted March 29, 2007 resuscito il topic dp un anno e mezzo (causa: il tasto cerca ha trovato qst). A me servirebbe questo script ma il pg mi resta fermo, mAsTeR, a te parte? help plzzzzz Link to comment Share on other sites More sharing options...
0 Sleeping Leonhart Posted March 29, 2007 Share Posted March 29, 2007 (edited) Recentemente io ho creato questo ma è per un movimento n*4 (i frame sono quanti te ne pare).Devo precisarti che gli eroi e gli eventi possono avere un numero di frame differenti.Le impostazioni di default sono EROI a 8*4 con 1 frame per la posa da fermo (quindi 9*4)mentre gli eventi hanno una grafica 4*4.Per la camminata diagonale viene usata la grafica del PG in alto quando cammini nelle direzioni su/destra su/sinistra mentre la grafica del PG in basso quando cammini in giu/destra giu/sinistraSe ti può essere utile ecco lo script: #==============================================================================# ** Hero and Event Frame Script 1.1 (25-03-2007)# by The Sleeping Leonhart#------------------------------------------------------------------------------# This script allow the user to choice the frame of the hero, the frame of# the event, add a standing pose and the 8 direction movement.# This Script include the patch for the menu.#==============================================================================#=========================== CONFIGURATION =====================================HERO_FRAME = 8 #frame for the heroEVENT_FRAME = 4 #frame for the eventHERO_STAND = true #enable/disable the hero standing poseEVENT_STAND = false #enable/disable the event standing poseEIGHT_DIRECTION = true #enabledisable the 8 direction mode#===============================================================================class Sprite_Character < RPG::Spritealias tsl_spritecharcter_update updatedef updatesuperif @tile_id != @character.tile_id or@character_name != @character.character_name or@character_hue != @character.character_hue@tile_id = @character.tile_id@character_name = @character.character_name@character_hue = @character.character_hueif @tile_id >= 384self.bitmap = RPG::Cache.tile($game_map.tileset_name,@tile_id, @character.character_hue)self.src_rect.set(0, 0, 32, 32)self.ox = 16self.oy = 32elseself.bitmap = RPG::Cache.character(@character.character_name,@character.character_hue)if @character.is_a?(Game_Event)if EVENT_STAND@cw = bitmap.width / (EVENT_FRAME + 1)@ch = bitmap.height / 4else@cw = bitmap.width / EVENT_FRAME@ch = bitmap.height / 4endelsif @character.is_a?(Game_Player)if HERO_STAND@cw = bitmap.width / (HERO_FRAME + 1)@ch = bitmap.height / 4else@cw = bitmap.width / HERO_FRAME@ch = bitmap.height / 4endendself.ox = @cw / 2self.oy = @chendendtsl_spritecharcter_updateendendclass Game_Characterattr_reader :step_animeattr_reader :walk_animeattr_reader :stop_countdef updateif jumping?update_jumpelsif moving?update_moveelseupdate_stopendif not self.is_a?(Game_Player)if @anime_count > 16 - @move_speed * 2if not @step_anime and @stop_count > 0@pattern = @original_patternelseif EVENT_STAND == true@pattern = @pattern - 1@pattern = (@pattern + 1) % EVENT_FRAME + 1else@pattern = (@pattern + 1) % EVENT_FRAMEendend@anime_count = 0endelseif @anime_count > 16 - @move_speed * 2if not @step_anime and @stop_count > 0@pattern = @original_patternelseif HERO_STAND == true@pattern = @pattern - 1@pattern = (@pattern + 1) % HERO_FRAME + 1else@pattern = (@pattern + 1) % HERO_FRAMEendend@anime_count = 0endendif @wait_count > 0@wait_count -= 1returnendif @move_route_forcingmove_type_customreturnendif @starting or lock?returnendif @stop_count > (40 - @move_frequency * 2) * (6 - @move_frequency)case @move_typewhen 1move_type_randomwhen 2move_type_toward_playerwhen 3move_type_customendendenddef move_lower_leftunless @direction_fixif EIGHT_DIRECTION == true@direction = 3else@direction = (@direction == 6 ? 4 : @direction == 8 ? 2 : @direction)endendif (passable?(@x, @y, 2) and passable?(@x, @y + 1, 4)) or(passable?(@x, @y, 4) and passable?(@x - 1, @y, 2))if EIGHT_DIRECTION == trueturn_downleftend@x -= 1@y += 1increase_stepsendenddef move_lower_rightunless @direction_fixif EIGHT_DIRECTION == true@direction = 3else@direction = (@direction == 4 ? 6 : @direction == 8 ? 2 : @direction)endendif (passable?(@x, @y, 2) and passable?(@x, @y + 1, 6)) or(passable?(@x, @y, 6) and passable?(@x + 1, @y, 2))if EIGHT_DIRECTION == trueturn_downrightend@x += 1@y += 1increase_stepsendenddef move_upper_leftunless @direction_fixif EIGHT_DIRECTION == true@direction = 9else@direction = (@direction == 6 ? 4 : @direction == 2 ? 8 : @direction)endendif (passable?(@x, @y, 8) and passable?(@x, @y - 1, 4)) or(passable?(@x, @y, 4) and passable?(@x - 1, @y, 8))if EIGHT_DIRECTION == trueturn_upleftend@x -= 1@y -= 1increase_stepsendenddef move_upper_rightunless @direction_fixif EIGHT_DIRECTION == true@direction = 9else@direction = (@direction == 4 ? 6 : @direction == 2 ? 8 : @direction)endendif (passable?(@x, @y, 8) and passable?(@x, @y - 1, 6)) or(passable?(@x, @y, 6) and passable?(@x + 1, @y, 8))if EIGHT_DIRECTION == trueturn_uprightend@x += 1@y -= 1increase_stepsendenddef move_randomif EIGHT_DIRECTION == truecaserand=8elsecaserand=4endcase rand(caserand)when 0move_down(false)when 1move_left(false)when 2move_right(false)when 3move_up(false)when 4move_lower_leftwhen 5move_lower_rightwhen 6move_upper_leftwhen 7move_upper_rightendenddef move_toward_playersx = @x - $game_player.xsy = @y - $game_player.yif sx == 0 and sy == 0returnendabs_sx = sx.absabs_sy = sy.absif EIGHT_DIRECTION == trueif sx > 0if sy > 0move_upper_leftelsif sy <0move_lower_leftelsemove_leftendelsif sx <0if sy > 0move_upper_rightelsif sy <0move_lower_rightelsemove_rightendelseif sy > 0move_upelsif sy <0move_downelseendendelseif abs_sx == abs_syrand(2) == 0 ? abs_sx += 1 : abs_sy += 1endif abs_sx > abs_sysx > 0 ? move_left : move_rightif not moving? and sy != 0sy > 0 ? move_up : move_downendelsesy > 0 ? move_up : move_downif not moving? and sx != 0sx > 0 ? move_left : move_rightendendendenddef move_away_from_playersx = @x - $game_player.xsy = @y - $game_player.yif sx == 0 and sy == 0returnendabs_sx = sx.absabs_sy = sy.absif EIGHT_DIRECTION == trueif sx > 0if sy > 0move_lower_rightelsif sy <0move_upper_rightelsemove_rightendelsif sx <0if sy > 0move_lower_leftelsif sy <0move_upper_leftelsemove_leftendelseif sy > 0move_downelsif sy <0move_upelseendendelseif abs_sx == abs_syrand(2) == 0 ? abs_sx += 1 : abs_sy += 1endif abs_sx > abs_sysx > 0 ? move_right : move_leftif not moving? and sy != 0sy > 0 ? move_down : move_upendelsesy > 0 ? move_down : move_upif not moving? and sx != 0sx > 0 ? move_right : move_leftendendendenddef move_forwardif EIGHT_DIRECTION == truecase @directionwhen 2move_down(false)when 4move_left(false)when 6move_right(false)when 8move_up(false)endelsecase @directionwhen 1move_lower_leftwhen 2move_down(false)when 3move_lower_rightwhen 4move_left(false)when 6move_right(false)when 7move_upper_leftwhen 8move_up(false)when 9move_upper_rightendendenddef move_backwardlast_direction_fix = @direction_fix@direction_fix = trueif EIGHT_DIRECTION == truecase @directionwhen 1move_upper_rightwhen 2move_up(false)when 3move_upper_leftwhen 4move_right(false)when 6move_left(false)when 7move_lower_rightwhen 8move_down(false)when 9move_lower_leftendelsecase @directionwhen 2move_up(false)when 4move_right(false)when 6move_left(false)when 8move_down(false)endend@direction_fix = last_direction_fixenddef turn_upleftunless @direction_fix@direction = 9@stop_count = 0endenddef turn_uprightunless @direction_fix@direction = 9@stop_count = 0endenddef turn_downleftunless @direction_fix@direction = 3@stop_count = 0endenddef turn_downrightunless @direction_fix@direction = 3@stop_count = 0endenddef turn_right_90case @directionwhen 1turn_downrightwhen 2turn_leftwhen 3turn_uprightwhen 4turn_upwhen 6turn_downwhen 7turn_downleftwhen 8turn_rightwhen 9turn_upleftendenddef turn_left_90case @directionwhen 1turn_upleftwhen 2turn_rightwhen 3turn_downleftwhen 4turn_downwhen 6turn_upwhen 7turn_uprightwhen 8turn_leftwhen 9turn_downrightendenddef turn_180case @directionwhen 1turn_uprightwhen 2turn_upwhen 3turn_upleftwhen 4turn_rightwhen 6turn_leftwhen 7turn_downrightwhen 8turn_downwhen 9turn_downleftendenddef turn_randomif EIGHT_DIRECTION == truecaserand = 8elsecaserand = 4endcase rand(caserand)when 0turn_downwhen 1turn_leftwhen 2turn_rightwhen 3turn_upwhen 4turn_downleftwhen 5turn_downrightwhen 6turn_upleftwhen 7turn_uprightendenddef turn_toward_playersx = @x - $game_player.xsy = @y - $game_player.yif EIGHT_DIRECTION == trueif sx > 0if sy > 0turn_upleftelsif sy <0turn_downleftelseturn_leftendelsif sx <0if sy > 0turn_uprightelsif sy <0turn_downrightelseturn_rightendelseif sy > 0turn_upelsif sy <0turn_downelseendendelseif sx == 0 and sy == 0returnendif sx.abs > sy.abssx > 0 ? turn_left : turn_rightelsesy > 0 ? turn_up : turn_downendendenddef turn_away_from_playersx = @x - $game_player.xsy = @y - $game_player.yif EIGHT_DIRECTION == trueif sx > 0if sy > 0turn_downrightelsif sy <0turn_uprightelseturn_rightendelsif sx <0if sy > 0turn_downleftelsif sy <0turn_upleftelseturn_leftendelseif sy > 0turn_downelsif sy <0turn_upelseendendelseif sx == 0 and sy == 0returnendrif sx.abs > sy.abssx > 0 ? turn_right : turn_leftelsesy > 0 ? turn_down : turn_upendendendendendclass Game_Player < Game_Characteralias tsl_gameplayer_update updatedef updatelast_moving = moving?unless moving? or $game_system.map_interpreter.running? or@move_route_forcing or $game_temp.message_window_showingif EIGHT_DIRECTION == truecase Input.dir8when 1move_lower_leftwhen 2move_downwhen 3move_lower_rightwhen 4move_leftwhen 6move_rightwhen 7move_upper_leftwhen 8move_upwhen 9move_upper_rightendelsecase Input.dir4when 2move_downwhen 4move_leftwhen 6move_rightwhen 8move_upendendendtsl_gameplayer_updateendendclass Window_Base < Windowdef draw_actor_graphic(actor, x, y)bitmap = RPG::Cache.character(actor.character_name, actor.character_hue)if HERO_STANDcw = bitmap.width / (HERO_FRAME + 1)elsecw = bitmap.width / HERO_FRAMEendch = bitmap.height / 4src_rect = Rect.new(0, 0, cw, ch)self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect)endend Edited July 22, 2013 by Apo Spoiler buggato http://img296.imageshack.us/img296/8784/csuserbarew2.pngScarica la Demo!Tutti i miei script(o quasi) li trovi Qui! Link to comment Share on other sites More sharing options...
0 Reyden Posted March 30, 2007 Share Posted March 30, 2007 se ho capito bene quindi qst script serve a far venire gli eventi 4x4 e l'eroe 9x4? a me veramente serviva uno script x fare il movimento ad 8 direzioni usando un chara 9x8. Per capire su,giu,dx,sx, sudx, giudx, susx, giusx Link to comment Share on other sites More sharing options...
0 Sleeping Leonhart Posted March 30, 2007 Share Posted March 30, 2007 Le 8 direzioni ci sono ma usa le 4 direzioni standard http://img296.imageshack.us/img296/8784/csuserbarew2.pngScarica la Demo!Tutti i miei script(o quasi) li trovi Qui! Link to comment Share on other sites More sharing options...
0 Reyden Posted March 30, 2007 Share Posted March 30, 2007 nn mi piace il risultato, se nn sbaglio Zero ha postato lo script ke mi serve ma il pg mi resta fermo e nn posso muoverlo Link to comment Share on other sites More sharing options...
0 Reyden Posted March 30, 2007 Share Posted March 30, 2007 ho trovato questo script ma mi da errore critico, potete vedere se a voi lo da? http://www.rmxp.org/forums/downloads.php?do=file&id=342 Link to comment Share on other sites More sharing options...
0 Sleeping Leonhart Posted March 30, 2007 Share Posted March 30, 2007 A me nn da nessun tipo di errore.Potresti scrivere il tipo di errore che ti da e in quale linea così provo a vedere qual'è il problema. http://img296.imageshack.us/img296/8784/csuserbarew2.pngScarica la Demo!Tutti i miei script(o quasi) li trovi Qui! Link to comment Share on other sites More sharing options...
0 Reyden Posted March 31, 2007 Share Posted March 31, 2007 mi da proprio questa schermata http://img238.imageshack.us/img238/4345/copiadirockpointbc9.th.png forse è un problema mio, xo nn so che dovrei fare Link to comment Share on other sites More sharing options...
0 Sleeping Leonhart Posted March 31, 2007 Share Posted March 31, 2007 è un problema di game.exe prova a sostituire questo file con quello di un altro gioco. http://img296.imageshack.us/img296/8784/csuserbarew2.pngScarica la Demo!Tutti i miei script(o quasi) li trovi Qui! Link to comment Share on other sites More sharing options...
0 Reyden Posted March 31, 2007 Share Posted March 31, 2007 Che bello, lo script ora funge (dovevo cambiare il game testuale) :chirol_iei2: il problema è che nn mi funge cn gli altri 20 script che ho <_< Link to comment Share on other sites More sharing options...
0 Reyden Posted March 31, 2007 Share Posted March 31, 2007 mi funziona finalmente!!! xo il problema è che i battlers laterali sono come tranciati, leon cn il tuo script che hai postato prima il problema si risolve? Link to comment Share on other sites More sharing options...
0 Sleeping Leonhart Posted April 1, 2007 Share Posted April 1, 2007 Quello script e quello mio modificano solamente i characters non i battlers. Per quello ci vuole uno script a parte o devi configurare bene il tuo.Se posti lo script e un battler vedo che posso fare. http://img296.imageshack.us/img296/8784/csuserbarew2.pngScarica la Demo!Tutti i miei script(o quasi) li trovi Qui! Link to comment Share on other sites More sharing options...
Question
mAsTeR
allora GO DUE DOMANDE:
1) Non trovo piu' lo script che permette di inserire charset con 8 direzioni invece delle normali 4
2) Avevo la versione con 7 sprites per direzione ( 7 x 8 )... sono per caso uscite nuove versioni dello script per esempio 9 x 8 ???
grazias
http://alpha85.altervista.org/_altervista_ht/banner_eViL.png
Project: eViL CHAPTER I: IL SUPREMO | Powered by: PhoenixSoft |Home site
Link to comment
Share on other sites
15 answers to this question
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now