질문과 답변

Extra Form

class Damage < Sprite
  def initialize(x, y, dealt_damage = 0, viewport = Viewport.new(0,0,640,480))
    super(viewport)
    @_damage_duration = 0
    self.x = x
    self.y = y
    @damage = dealt_damage
    damage(@damage)
  end
   
  def dispose
    dispose_damage
    super
  end

  def damage(value)
    dispose_damage
    if value.is_a?(Numeric)
      damage_string = value.abs.to_s
    else
      damage_string = value.to_s
    end
        dispose_damage
        if $fsize==nil
          $fsize=0
        end
    bitmap = Bitmap.new(160, 48)
    bitmap.font.name = "휴먼아미체"
    bitmap.font.size = 20+$fsize
    bitmap.font.color.set(0, 0, 0)
    bitmap.draw_text(-1, 12-1, 160, 36, damage_string, 1)
    bitmap.draw_text(+1, 12-1, 160, 36, damage_string, 1)
    bitmap.draw_text(-1, 12+1, 160, 36, damage_string, 1)
    bitmap.draw_text(+1, 12+1, 160, 36, damage_string, 1)
    if value.is_a?(Numeric) and value < 0
      bitmap.font.color.set(176, 255, 144)
    else
      bitmap.font.color.set(255, 255, 255)
    end
    bitmap.draw_text(0, 12, 160, 36, damage_string, 1)#
    @_damage_sprite = ::Sprite.new(self.viewport)
    @_damage_sprite.bitmap = bitmap
    @_damage_sprite.ox = 80
    @_damage_sprite.oy = 20
    @_damage_sprite.x = self.x
    @_damage_sprite.y = self.y - self.oy / 2
    @_damage_sprite.z = 9001
    @_damage_duration = 20
    end

  def dispose_damage
    if @_damage_sprite != nil
      @_damage_sprite.bitmap.dispose
      @_damage_sprite.dispose
      @_damage_sprite = nil
      @_damage_duration = 0
    end
  end
  def update
    super
    if @_damage_duration > 0
      @_damage_duration -= 1
      case @_damage_duration
      when 18..19
        @_damage_sprite.y -= 4
        $fsize=10
     
      when 16..17
        @_damage_sprite.y -= 2
        $fsize=7
      when 14..15
        @_damage_sprite.y -= 2
        $fsize=4
      when 8..13
        @_damage_sprite.y -= 2
        $fsize=1
        end
      @_damage_sprite.opacity = 256 - (12 - @_damage_duration) * 32
      if @damage_duration == 0
        dispose
      end
    end
  end
end

 

class Scene_Map
  alias trickster_update update
  def update
    if $damage != nil
      if $damage.disposed?
        $damage = nil
      else
        $damage.update
      end
    end
    trickster_update
  end
end

 

class Interpreter
  def command_338
    # Get operate value
    value = operate_value(0, @parameters[2], @parameters[3])
    # Process with iterator
    iterate_battler(@parameters[0], @parameters[1]) do |battler|
      # If battler exists
      if battler.exist?
        # Change HP
        battler.hp -= value
        # If in battle
        if $game_temp.in_battle
          # Set damage
          battler.damage = value
          battler.damage_pop = true
        else
          if battler.is_a?(Game_Actor)
            x = $game_player.screen_x
            y = $game_player.screen_y
          else
            x = battler.screen_x
            y = battler.screen_y
          end
          viewport = Viewport.new(0,0,640,480)
          damage = value
          $damage = Damage.new(x,y,viewport,damage)
        end
      end
    end
    # Continue
    return true
  end
end

 

 

 

 

======================================================================

 

백호님께서 올려주신 데미지표시 스크립트이며 제가 처음 심플액알을 받았을 당시부터 같이 들어가 있었습니다.

문제는 이녀석이 평소에는 멀쩡하게 작동하다가 공격을 짧은 주기로 여러번 하게 되면 바보가 된다는 겁니다..

 

예를들어 공격을 한번 하면 x프레임동안 보인다음 사라진다고 가정했을 때,

한번 화면상에 출력 된 다음 x프레임이 지나기 전에 또다시 출력되면, 이전에 출력되던 녀석은 바로 멈춰버리고(사라지지도 않습니다.)

가장 최근에 출력된 데미지만 정상적으로 위로 올라가면서 사라집니다. . . . . ...............................

 

물론 @damage 이자식을 글로벌변수로 바꿔버릴수도 있겠지만,..... 위와같은 상황이 발생하였을 때,

이전에 출력되던 녀석들은 바로바로 날라가버리기때문에 눈으로 볼 수가 없습니다...

 

크.......... 너무 해매고있습니다. 어떻게 해야 할 지 정말 대첵이 안서는군요.. ㅍ....

헬프!! ㅠㅠ

Who's Lighna

profile

스트레스 받는다.

Comment '13'
  • profile
    JACKY 2012.02.14 11:09
    스크립트가 답답하니 제가 그냥하나 만들어드릴께요.
  • profile

  • profile
    JACKY 2012.02.14 18:17

    아니 처처처처처첫번째 사진은... <헐 님 변태였음?>

     

    두번째꺼 처음보고 파이인가 했는데 더블제잌ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

  • profile
    Lighna 2012.02.14 18:32

    아..헐.....

    올리고나서 눈치챘네........아........................ "아마가미" 캐릭터인데

    아.......ㅋㅋㅋ

  • profile
    슈팅스타* 2012.02.14 18:20

    첫번째 사진 뭐죠

    야겜 히로인인가?

    하트 제스쳐? love+?

  • profile
    쉰라면블랙 2012.02.16 23:29

    꺄-아~♥

    꺄~

    꺄앍~

  • profile
    JACKY 2012.02.14 20:59 Files첨부 (1)

    다만들었다 헠헠

    Damage.zip

  • profile
    Lighna 2012.02.14 21:11

    우오와와우오ㅜ와오ㅜ아우!!

    뭐라도 드리고거나 해드리고 싶은데 !!!!!!!!!!!!!!?

    어떻게해야하죠!!!????!!!!!!!????? 

  • profile
    쉰라면블랙 2012.02.16 23:28

    http://avangs.info/kin/386874

    여기에 제가 지금 글올릴쯤에 완성한 제 질문입니다.

    이거를 이벤트로 못바구겟죠?

    십의자리 백, 천, 승제..등등

     

    근데.그건 그렇고 이스크립트에 변수를 넣고 싶은데 어캐해야돼요?

    첫번째칸에다가 \v[1] 이렇게 해야되나요?

  • profile
    JACKY 2012.02.17 00:37

    아뇨. $game_variables[변수 번호] 식으로 해야합니다.

  • profile
    JACKY 2012.02.17 00:39

    글고 스크립트를 이벤트로 바꾸는건 사실상 힘듭니다.

    둘의 작동방식은 좀 다르거든요. 이 스크립트의 경우 draw_text (텍스트를 그리는 함수) 를 이용한거라

    텍스트의 자릿수에 구애받지않고 자유롭게 표시가 됩니다.

    이벤트로 하시려면 픽쳐를 쓰시거나 해야하는데..... 이럴경우 픽쳐 표시갯수 제한이라던가

    이런거땜시 그다지 쉽진 않을겁니다 ;;

  • profile
    쉰라면블랙 2012.02.17 14:28

    음,,, 그렇다면, 제가 그거 다운받아봤는데..

     

    변수가 100이면 100만나오는게 아니라 분산도처럼 바뀌고

     

    그 몬스터에게 말을걸면 몇번눌루면 플레이어도 수치가 나오는데,, 왜그러는거죠?

     

    음... 그거를 고칠수 있나요? 그거 고쳐서 쓰면, 그냥 액알 뎀지 표시가 완벽할듯,..

  • profile
    JACKY 2012.02.21 00:36
    스샷이라도 좀 주셨음하네요
    말만으로는 이해가잘 안가서리

List of Articles
종류 분류 제목 글쓴이 날짜 조회 수
공지 묻고 답하기 가이드 습작 2014.06.14 12392
RMXP 그래픽문제 3 gusrl123 2012.02.28 1943
RMXP 스크립트에서... Lighna 2012.02.27 1058
RMXP 전투 돌입후 필드 bgm이 처음 부분으로 돌아갑니다... 1 마리오and젤다 2012.02.26 1888
RMXP rpg xp문장에 대해 질문 3 굿닝 2012.02.26 2448
RMXP rpgxp를 만들고 실행하는데 에러가 나요. 2 file 게임초보zz 2012.02.26 2004
RMXP 예기치 않은 파일 포맷 2 file 준석 2012.02.25 2569
RMXP rpg xp를 실행하는데 오류가나여 8 환웅천황 2012.02.25 1638
RMXP 점프기능 관련해서 질문 ... 1 카레라이 2012.02.24 1897
RMXP 죽으면 다시살아나는법없나요? 1 김꼬봉 2012.02.23 2019
RMXP 통합칩 만들줄 아시는분.... 1 ★병맛★ 2012.02.22 2256
RMXP RPGXP 특정 사운드소스 출력 오류 2 아놔아아 2012.02.21 4100
RMXP 시작조건 2 푸헹크 2012.02.21 2414
RMXP 게임에 3d max 캐릭터 넣는 스크립트 2 파이어기도우 2012.02.20 2639
RMXP rpgxp공격력 5 gusrl123 2012.02.20 2241
RMXP 오토타일 추가법.. 4 Lighna 2012.02.20 2080
RMXP 전투 화면 그래픽 바꾸기 1 끼룩 2012.02.18 2451
RMXP xp에서 조작키 바꾸기 2 난현이라는 2012.02.18 2214
RMXP 맵배치 1 i스폰지밥 2012.02.16 2252
RMXP 스크립트로 메뉴를 바꿨더니 픽쳐에 묻히네요. 1 모르모트 2012.02.15 2412
RMXP 음;; 데미지표시스크립트입니다만.. 이 스크립트를 어떻게 손대야 할 지 모르겠습니다. 13 Lighna 2012.02.13 1760
Board Pagination Prev 1 ... 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 ... 90 Next
/ 90