질문과 답변

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 12448
RMXP RPG만들기 ( 완전 생초보 처음 ) 8 제프 2014.05.01 576
RMXP 그림의 이동 3 흑호 2010.10.02 577
RMXP 미니맵 스크립트 스위치 질문입니다. 2 황제님 2010.10.05 578
RMXP 맵칩 2 크루즈 2011.02.08 579
RMXP 맵에서 특정부분에 갔을 때 글이 뜨도록.. 1 게이머 2011.02.21 581
RMXP 아무것도 몰라요... 6 끌자노리 2011.01.25 582
RMXP 턴알 전투중에 상대 몬스터 HP를 보이고 싶습니다 Irr 2014.06.08 582
RMXP RPGXP하시는고수분들은이것좀봐주십시요 1 청풍쾌검 2011.01.01 583
RMXP 장비고정에관하여... 1 M4A1 Blcak Custom 2011.01.09 583
RMXP 이벤트 좌표 액알을 이용하는데요. 우리 편 만드는 방법 좀... 삼국지짱 2011.02.06 583
RMXP 윈도우창 위치 변경 5 file 모자리나 2018.06.09 584
RMXP 다시 한번 맵칩에 관한 질문 입니다. 2 미니쿠키 2011.01.22 584
RMXP 월드맵 관련해서 질문합니다. 2 RMadrid 2011.01.09 585
RMXP 명암효과 2 초보메이커 2011.02.01 585
RMXP 전투방식 질문이요. 2 사람맨의구원 2011.02.07 587
RMXP 맵타일 바꾸면 배치해둔것도 바꿔저요 3 크루즈 2011.02.06 589
RMXP 이벤트 관련 질문입니다. 2 file 프로젝슨 2011.01.17 590
RMXP 새로운 맵칩 등록 방법 부탁드립니다. 2 제프 2014.05.04 590
RMXP 게임오버 1 한애 2011.01.16 591
RMXP 이동이 되지 않습니다. 3 새싹의 2013.04.27 591
Board Pagination Prev 1 ... 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 ... 90 Next
/ 90