질문과 답변

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 13183
툴선택 rpg만들기vx 랑 rpg만들기xp중에 어떤것이 더 좋을까요? 9 2012.02.16 2377
RMVX 구름? 안개? 뿌연효과 2 file 황금시계 2012.02.16 2325
RMXP 스크립트로 메뉴를 바꿨더니 픽쳐에 묻히네요. 1 모르모트 2012.02.15 2415
기타 도트 캐릭'만' 이미지 저장하는 방법 5 펜슬 2012.02.15 2660
RMVX 보행 그래픽 짤림 1 file 124867960 2012.02.15 2328
기타 페이스 메이커 질문이요 2 Raychel 2012.02.15 2196
RMVX 화면 뜨게 하는법! 1 제복잇 2012.02.14 2688
RMVXA [이벤트 커맨드] 내의 [스크립트] 사용시 문제. 9 file 마에르드 2012.02.14 1418
RMVX 보행그래픽 짤림 2 file 궁궐앞거지 2012.02.14 2483
RMVX RPG VX 맵상전투로 바꾸는방법이 뭐죠; 2 궁궐앞거지 2012.02.13 2879
RMXP 음;; 데미지표시스크립트입니다만.. 이 스크립트를 어떻게 손대야 할 지 모르겠습니다. 13 Lighna 2012.02.13 1764
RMVXA 게임을 뜯었을 때 세이브 파일이 호환이 안되는 문제 2 비비드 2012.02.13 1940
RMXP RPGXP 셀프스위치와 커먼이벤트 5 생파 2012.02.13 2092
RMVXA 그림의 표시를 상세하게 조정하고 싶습니다. 6 마에르드 2012.02.13 1855
RMVX 스크립트를 이용한 특정 액터의 데미지 공식 변경과 스위치 조작 뱀딸기 2012.02.12 1489
RMVXA 전투 파티의 대열보행문제 1 쿠쿠밥솥 2012.02.11 2266
RMVX vx'예기치 못한 파일 형식입니다' 3 난현이라는 2012.02.11 2268
RMVX 전투중 몬스터 각성 시스템 구현을 해보고 싶습니다 2 agitated 2012.02.11 2432
RMVXA RPG VX ACE에서 메뉴창에서 저장을 삭제하는 방법 3 간당께 2012.02.10 3705
RMXP 이름 뒤에 을이나 를을 구별하는 스크립트는 있읍니까? 5 파이어기도우 2012.02.10 2624
Board Pagination Prev 1 ... 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 ... 517 Next
/ 517